⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rm_jveditorcommon.hpp

📁 这是一个功能强大
💻 HPP
📖 第 1 页 / 共 4 页
字号:
// CodeGear C++Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Rm_jveditorcommon.pas' rev: 11.00

#ifndef Rm_jveditorcommonHPP
#define Rm_jveditorcommonHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Shellapi.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Contnrs.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Stdctrls.hpp>	// Pascal unit
#include <Extctrls.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit
#include <Rm_jvfixededitpopup.hpp>	// Pascal unit
#include <Rm_jvunicodecanvas.hpp>	// Pascal unit
#include <Rm_jvexcontrols.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Rm_jveditorcommon
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS EJvEditorError;
class PASCALIMPLEMENTATION EJvEditorError : public Sysutils::Exception 
{
	typedef Sysutils::Exception inherited;
	
public:
	#pragma option push -w-inl
	/* Exception.Create */ inline __fastcall EJvEditorError(const AnsiString Msg) : Sysutils::Exception(Msg) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateFmt */ inline __fastcall EJvEditorError(const AnsiString Msg, System::TVarRec const * Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateRes */ inline __fastcall EJvEditorError(int Ident)/* overload */ : Sysutils::Exception(Ident) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmt */ inline __fastcall EJvEditorError(int Ident, System::TVarRec const * Args, const int Args_Size)/* overload */ : Sysutils::Exception(Ident, Args, Args_Size) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateHelp */ inline __fastcall EJvEditorError(const AnsiString Msg, int AHelpContext) : Sysutils::Exception(Msg, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateFmtHelp */ inline __fastcall EJvEditorError(const AnsiString Msg, System::TVarRec const * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResHelp */ inline __fastcall EJvEditorError(int Ident, int AHelpContext)/* overload */ : Sysutils::Exception(Ident, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmtHelp */ inline __fastcall EJvEditorError(System::PResStringRec ResStringRec, System::TVarRec const * Args, const int Args_Size, int AHelpContext)/* overload */ : Sysutils::Exception(ResStringRec, Args, Args_Size, AHelpContext) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~EJvEditorError(void) { }
	#pragma option pop
	
};


struct TCellRect
{
	
public:
	int Width;
	int Height;
} ;

#pragma pack(push,1)
struct TLineAttr
{
	
public:
	Graphics::TColor FC;
	Graphics::TColor BC;
	Graphics::TFontStyles Style;
	Graphics::TColor Border;
} ;
#pragma pack(pop)

typedef DynamicArray<TLineAttr >  TLineAttrs;

typedef DynamicArray<int >  TDynIntArray;

typedef DynamicArray<bool >  TDynBoolArray;

#pragma option push -b-
enum TModifiedAction { maAll, maInsert, maDelete, maInsertColumn, maDeleteColumn, maReplace };
#pragma option pop

struct TBookmark
{
	
public:
	int X;
	int Y;
	bool Valid;
} ;

typedef Shortint TBookmarkNum;

typedef TBookmark TBookmarks[10];

#pragma option push -b-
enum TJvSelBlockFormat { bfInclusive, bfLine, bfColumn, bfNonInclusive };
#pragma option pop

typedef void __fastcall (__closure *TOnPaintGutter)(System::TObject* Sender, Graphics::TCanvas* Canvas);

typedef void __fastcall (__closure *TOnGutterClick)(System::TObject* Sender, int Line);

typedef void __fastcall (__closure *TJvLineChangeEvent)(System::TObject* Sender, int Line);

typedef Word TEditCommand;

typedef AnsiString TMacro;

class DELPHICLASS TJvEditKey;
class PASCALIMPLEMENTATION TJvEditKey : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	Word Key1;
	Word Key2;
	Classes::TShiftState Shift1;
	Classes::TShiftState Shift2;
	Word Command;
	__fastcall TJvEditKey(const Word ACommand, const Word AKey1, const Classes::TShiftState AShift1);
	__fastcall TJvEditKey(const Word ACommand, const Word AKey1, const Classes::TShiftState AShift1, const Word AKey2, const Classes::TShiftState AShift2);
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TJvEditKey(void) { }
	#pragma option pop
	
};


typedef void __fastcall (__closure *TCommand2Event)(System::TObject* Sender, const Word Key1, const Classes::TShiftState Shift1, const Word Key2, const Classes::TShiftState Shift2, Word &Command);

class DELPHICLASS TJvKeyboard;
class PASCALIMPLEMENTATION TJvKeyboard : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	Contnrs::TObjectList* FList;
	TCommand2Event FOnCommand2;
	
public:
	__fastcall TJvKeyboard(void);
	__fastcall virtual ~TJvKeyboard(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	void __fastcall Add(const Word ACommand, const Word AKey1, const Classes::TShiftState AShift1);
	void __fastcall Add2(const Word ACommand, const Word AKey1, const Classes::TShiftState AShift1, const Word AKey2, const Classes::TShiftState AShift2);
	void __fastcall Add2Ctrl(const Word ACommand, const Word AKey1, const Classes::TShiftState AShift1, const Word AKey2);
	void __fastcall Remove(const Word AKey1, const Classes::TShiftState AShift1);
	void __fastcall Remove2(const Word AKey1, const Classes::TShiftState AShift1, const Word AKey2, const Classes::TShiftState AShift2);
	void __fastcall RemoveCtrl(const Word ACommand);
	void __fastcall Clear(void);
	Word __fastcall Command(const Word AKey, const Classes::TShiftState AShift);
	Word __fastcall Command2(const Word AKey1, const Classes::TShiftState AShift1, const Word AKey2, const Classes::TShiftState AShift2);
	void __fastcall SetDefLayout(void);
	__property TCommand2Event OnCommand2 = {read=FOnCommand2, write=FOnCommand2};
};


struct TJvSelectionRec;
typedef TJvSelectionRec *PJvSelectionRec;

struct TJvSelectionRec
{
	
public:
	bool IsSelected;
	bool Selecting;
	TJvSelBlockFormat SelBlockFormat;
	int SelBegX;
	int SelBegY;
	int SelEndX;
	int SelEndY;
	int SelStartX;
	int SelStartY;
	int SelLineOrgBegX;
	int SelLineOrgEndX;
} ;

#pragma option push -b-
enum TJvLineSelectStyle { lssUnselected, lssBreakpoint, lssDebugPoint, lssErrorPoint };
#pragma option pop

#pragma option push -b-
enum TAdjustPersistentBlockMode { amInsert, amDelete, amDeleteLine, amLineConcat, amLineBreak };
#pragma option pop

#pragma option push -b-
enum TCompletionList { cmIdentifiers, cmTemplates };
#pragma option pop

typedef void __fastcall (__closure *TOnCompletion)(System::TObject* Sender, bool &Cancel);

__interface IJvUndoCompound;
typedef System::DelphiInterface<IJvUndoCompound> _di_IJvUndoCompound;
__interface  INTERFACE_UUID("{D326A114-0A57-4654-A7F0-16D3BBD0A2CE}") IJvUndoCompound  : public IInterface 
{
	
};

__interface IJvBackspaceUndo;
typedef System::DelphiInterface<IJvBackspaceUndo> _di_IJvBackspaceUndo;
__interface  INTERFACE_UUID("{88BE2C69-2C5C-48C0-AC46-888146DD70AD}") IJvBackspaceUndo  : public IInterface 
{
	
};

__interface IJvBackspaceUnindentUndo;
typedef System::DelphiInterface<IJvBackspaceUnindentUndo> _di_IJvBackspaceUnindentUndo;
__interface  INTERFACE_UUID("{A78B524C-684E-43BD-B8A4-A540CD0B022D}") IJvBackspaceUnindentUndo  : public IInterface 
{
	
};

class DELPHICLASS TJvUndoBuffer;
class DELPHICLASS TJvCustomEditorBase;
class DELPHICLASS TJvControlScrollBar95;
class PASCALIMPLEMENTATION TJvControlScrollBar95 : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	Forms::TScrollBarKind FKind;
	int FPosition;
	int FMin;
	int FMax;
	Forms::TScrollBarInc FSmallChange;
	Forms::TScrollBarInc FLargeChange;
	int FPage;
	unsigned FHandle;
	Stdctrls::TScrollEvent FOnScroll;
	void __fastcall SetParam(int Index, int Value);
	
protected:
	DYNAMIC void __fastcall Scroll(Stdctrls::TScrollCode ScrollCode, int &ScrollPos);
	
public:
	__fastcall TJvControlScrollBar95(void);
	void __fastcall SetParams(int AMin, int AMax, int APosition, int APage);
	void __fastcall DoScroll(Messages::TWMScroll &Msg);
	__property Forms::TScrollBarKind Kind = {read=FKind, write=FKind, default=0};
	__property Forms::TScrollBarInc SmallChange = {read=FSmallChange, write=FSmallChange, default=1};
	__property Forms::TScrollBarInc LargeChange = {read=FLargeChange, write=FLargeChange, default=1};
	__property int Min = {read=FMin, write=SetParam, index=0, default=0};
	__property int Max = {read=FMax, write=SetParam, index=1, default=100};
	__property int Position = {read=FPosition, write=SetParam, index=2, default=0};
	__property int Page = {read=FPage, write=SetParam, index=3, nodefault};
	__property unsigned Handle = {read=FHandle, write=FHandle, nodefault};
	__property Stdctrls::TScrollEvent OnScroll = {read=FOnScroll, write=FOnScroll};
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TJvControlScrollBar95(void) { }
	#pragma option pop
	
};


class DELPHICLASS TJvEditorClient;
class PASCALIMPLEMENTATION TJvEditorClient : public System::TObject 
{
	typedef System::TObject inherited;
	
public:
	TJvCustomEditorBase* FJvEditor;
	int Top;
	int __fastcall Left(void);
	int __fastcall Height(void);
	int __fastcall Width(void);
	int __fastcall ClientWidth(void);
	int __fastcall ClientHeight(void);
	Types::TRect __fastcall ClientRect();
	Types::TRect __fastcall BoundsRect();
	Rm_jvunicodecanvas::TJvUnicodeCanvas* __fastcall GetCanvas(void);
	__property Rm_jvunicodecanvas::TJvUnicodeCanvas* Canvas = {read=GetCanvas};
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TJvEditorClient(void) : System::TObject() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TJvEditorClient(void) { }
	#pragma option pop
	
};


class DELPHICLASS TJvCompletionBase;
class PASCALIMPLEMENTATION TJvCompletionBase : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	TJvCustomEditorBase* FJvEditor;
	Stdctrls::TListBox* FPopupList;
	int FItemIndex;
	TCompletionList FMode;
	TCompletionList FDefMode;
	int FItemHeight;
	Extctrls::TTimer* FTimer;
	bool FEnabled;
	bool FVisible;
	int FDropDownCount;
	int FDropDownWidth;
	Stdctrls::TListBoxStyle FListBoxStyle;
	void __fastcall OnTimer(System::TObject* Sender);
	int __fastcall GetItemIndex(void);
	void __fastcall SetItemIndex(int AValue);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -