📄 adtrmemu.pas
字号:
property Value : string read FValue write FValue; {!!.04}
end; {!!.04}
TAdEmuCommandParams = class (TCollection) {!!.04}
private {!!.04}
FOwner : TPersistent; {!!.04}
protected {!!.04}
function GetItem (Index : Integer) : TAdEmuCommandParamsItem; {!!.04}
function GetOwner : TPersistent; override; {!!.04}
procedure SetItem (Index : Integer; Value : TAdEmuCommandParamsItem); {!!.04}
public {!!.04}
constructor Create (AOwner : TPersistent); {!!.04}
{$IFNDEF VERSION5} {!!.04}
procedure Delete (Item : integer); {!!.04}
{$ENDIF} {!!.04}
function FindName (AName : string) : Integer; {!!.04}
function GetBooleanValue (AName : string; APosition : Integer; {!!.04}
ADefault : Boolean) : Boolean; {!!.04}
function GetIntegerValue (AName : string; APosition : Integer; {!!.04}
ADefault : Integer) : Integer; {!!.04}
function GetStringValue (AName : string; APosition : Integer; {!!.04}
ADefault : string) : string; {!!.04}
function GetTColorValue (AName : string; APosition : Integer; {!!.04}
ADefault : TColor) : TColor; {!!.04}
property Items[Index : Integer] : TAdEmuCommandParamsItem {!!.04}
read GetItem write SetItem; {!!.04}
end; {!!.04}
TAdEmuCommandListItem = class (TCollectionItem) {!!.04}
private {!!.04}
FCollection : TAdEmuCommandList; {!!.04}
FCommand : TAdEmuCommand; {!!.04}
FParams : TAdEmuCommandParams; {!!.04}
protected {!!.04}
public {!!.04}
constructor Create (Collection : TCollection); override; {!!.04}
destructor Destroy; override; {!!.04}
procedure AddBooleanArg (v : Boolean); {!!.04}
procedure AddIntegerArg (v : Integer); {!!.04}
procedure AddNamedBooleanArg (AName : string; v : Boolean); {!!.04}
procedure AddNamedIntegerArg (AName : string; v : Integer); {!!.04}
procedure AddNamedStringArg (AName : string; v : string); {!!.04}
procedure AddNamedTColorArg (AName : string; v : TColor); {!!.04}
procedure AddStringArg (v : string); {!!.04}
procedure AddTColorArg (v : TColor); {!!.04}
published {!!.04}
property Collection : TAdEmuCommandList {!!.04}
read FCollection write FCollection; {!!.04}
property Command : TAdEmuCommand read FCommand write FCommand; {!!.04}
property Params : TAdEmuCommandParams read FParams write FParams;{!!.04}
end; {!!.04}
TAdEmuCommandList = class (TCollection) {!!.04}
private {!!.04}
FOwner : TPersistent; {!!.04}
protected {!!.04}
function GetItem (Index : Integer) : TAdEmuCommandListItem; {!!.04}
function GetOwner : TPersistent; override; {!!.04}
procedure SetItem (Index : Integer; Value : TAdEmuCommandListItem); {!!.04}
public {!!.04}
constructor Create (AOwner : TPersistent); {!!.04}
{$IFNDEF VERSION5} {!!.04}
procedure Delete (Item : integer); {!!.04}
{$ENDIF} {!!.04}
function AddCommand (ACommand : TAdEmuCommand) : TAdEmuCommandListItem; {!!.04}
property Items[Index : Integer] : TAdEmuCommandListItem {!!.04}
read GetItem write SetItem; {!!.04}
end; {!!.04}
TAdTerminalEmulator = class;
TAdCustomTerminal = class(TApdBaseWinControl)
private
FActive : boolean;
FBlinkTime : integer;
FBlinkTimeCount : integer;
FBlinkTextVisible : boolean;
FBorderStyle : TBorderStyle;
FByteQueue : pointer;
FCapture : TAdCaptureMode;
FCaptureFile : string;
FCaptureStream : TFileStream;
FCanvas : TCanvas;
FCharHeight : integer; {height of char cell in pixels}
FCharWidth : integer; {width of char cell in pixels}
FClientCols : integer; {client width in columns, incl part}
FClientFullCols : integer; {client width in *full* columns}
FClientRows : integer; {client height in rows, incl part}
FClientFullRows : integer; {client height in *full* rows}
FComPort : TapdCustomComPort;
FCreatedCaret : boolean;
FCursorType : TAdCursorType;
FDefEmulator : TAdTerminalEmulator; {default = tty}
FEmulator : TAdTerminalEmulator;
FHalfDuplex : boolean;
FHaveSelection : boolean;
FHeartbeat : TTimer;
FLazyByteCount : integer;
FLazyTimeCount : integer;
FLazyByteDelay : integer;
FLazyTimeDelay : integer;
FLButtonAnchor : TPoint;
FLButtonDown : boolean;
FLButtonRect : TRect;
FOnCursorMoved : TAdTerminalCursorMovedEvent;
FOriginCol : integer;
FOriginRow : integer;
FScrollback : boolean;
FFreezeScrollBack : boolean;
{$IFDEF Win32}
FScrollHorzInfo : TScrollInfo;
FScrollVertInfo : TScrollInfo;
{$ENDIF}
FShowingCaret : boolean;
FTriggerHandlerOn : boolean;
FUsedRect : TRect;
FUseLazyDisplay : boolean;
FUnusedRightRect : TRect;
FUnusedBottomRect : TRect;
FUseHScrollBar : boolean;
FUseVScrollBar : boolean;
FWantAllKeys : boolean;
FWaitingForComPortOpen : boolean;
FWaitingForPort : Boolean; {!!.03}
FMouseSelect : Boolean; {!!.03}
FAutoCopy : Boolean; {!!.03}
FAutoScrollback : Boolean; {!!.03}
FHideScrollbars : Boolean; {!!.03}
FHideScrollbarHActive : Boolean; {!!.03}
FHideScrollBarVActive : Boolean; {!!.03}
FFollowCursor : Boolean; {!!.03}
FPasteToPort : Boolean; {!!.04}
FPasteToScreen : Boolean; {!!.04}
protected
procedure Loaded; override; {!!.03}
procedure tmFollowCursor; {!!.03}
{get and set methods for properties}
function tmGetAttributes(aRow, aCol : integer) : TAdTerminalCharAttrs;
function tmGetBackColor(aRow, aCol : integer) : TColor;
function tmGetCharSet(aRow, aCol : integer) : byte;
function tmGetColumns : integer;
function tmGetEmulator : TAdTerminalEmulator;
function tmGetForeColor(aRow, aCol : integer) : TColor;
function tmGetLine(aRow : integer) : string;
function tmGetRows : integer;
function tmGetScrollbackRows : integer;
procedure tmSetActive(aValue : boolean);
procedure tmSetAttributes(aRow, aCol : integer;
const aAttr : TAdTerminalCharAttrs);
procedure tmSetAutoCopy (const v : Boolean); {!!.03}
procedure tmSetAutoScrollback (const v : Boolean); {!!.03}
procedure tmSetBackColor(aRow, aCol : integer; aValue : TColor);
procedure tmSetBlinkTime(aValue : integer);
procedure tmSetBorderStyle(aBS : TBorderStyle);
procedure tmSetCapture(aValue : TAdCaptureMode);
procedure tmSetCaptureFile(const aValue : string);
procedure tmSetCharSet(aRow, aCol : integer; aValue : byte);
procedure tmSetComPort(aValue : TapdCustomComPort);
procedure tmSetColumns(aValue : integer);
procedure tmSetCursorType(aValue : TAdCursorType);
procedure tmSetFollowCursor (const v : Boolean); {!!.03}
procedure tmSetForeColor(aRow, aCol : integer; aValue : TColor);
procedure tmSetEmulator(aValue : TAdTerminalEmulator);
procedure tmSetHideScrollbars (const v : Boolean); {!!.03}
procedure tmSetLazyByteDelay(aValue : integer);
procedure tmSetLazyTimeDelay(aValue : integer);
procedure tmSetLine(aRow : integer; const aValue : string);
procedure tmSetMouseSelect (const v : Boolean); {!!.03}
procedure tmSetOriginCol(aValue : integer);
procedure tmSetOriginRow(aValue : integer);
procedure tmSetPasteToPort (const v : Boolean); {!!.04}
procedure tmSetPasteToScreen (const v : Boolean); {!!.04}
procedure tmSetRows(aValue : integer);
procedure tmSetScrollback(aValue : boolean);
procedure tmSetScrollbackRows(aValue : integer);
procedure tmSetUseLazyDisplay(aValue : boolean);
procedure tmSetWantAllKeys(aValue : boolean);
procedure tmSetFreezeScrollBack (v : boolean);
{various miscellaneous methods}
procedure tmDrawDefaultText;
procedure tmAttachToComPort;
procedure tmCalcExtent;
procedure tmDetachFromComPort;
procedure tmGetFontInfo;
procedure tmInvalidateRow(aRow : integer);
{caret methods}
procedure tmFreeCaret;
procedure tmHideCaret;
procedure tmMakeCaret;
procedure tmPositionCaret;
procedure tmShowCaret;
{scrollbar stuff}
procedure tmInitHScrollBar;
procedure tmInitVScrollBar;
function tmNeedHScrollbar : Boolean; {!!.03}
function tmNeedVScrollbar : Boolean; {!!.03}
procedure tmRemoveHScrollBar; {!!.03}
procedure tmRemoveVScrollBar; {!!.03}
procedure tmScrollHorz(aDist : integer);
procedure tmScrollVert(aDist : integer);
{selection stuff}
procedure tmGrowSelect(X, Y : integer);
procedure tmMarkDeselected(aRow : integer;
aFromCol, aToCol : integer);
procedure tmMarkSelected(aRow : integer;
aFromCol, aToCol : integer);
function tmProcessClipboardCopy(var Msg : TWMKeyDown) : boolean;
procedure tmStartSelect(X, Y : integer);
{overridden ancestor methods}
procedure KeyDown(var Key : word; Shift: TShiftState); override;
procedure KeyPress(var Key: Char); override;
procedure MouseDown(Button : TMouseButton; Shift : TShiftState;
X, Y : integer); override;
procedure MouseMove(Shift : TShiftState; X, Y : integer); override;
procedure MouseUp(Button : TMouseButton; Shift : TShiftState;
X, Y : integer); override;
procedure PaintWindow(DC : HDC); override;
procedure Notification(AComponent : TComponent;
Operation : TOperation); override;
{message and event handlers}
procedure ApwPortOpen(var Msg : TMessage); message APW_PORTOPEN;
procedure ApwPortClose(var Msg : TMessage); message APW_PORTCLOSE;
procedure ApwPortClosing(var Msg : TMessage); message APW_CLOSEPENDING; {!!.03}
procedure ApwTermForceSize(var Msg : TMessage); message APW_TERMFORCESIZE;
procedure ApwTermStuff(var Msg : TMessage); message APW_TERMSTUFF;
procedure AwpWaitForPort (var Msg : TMessage); message apw_TermWaitForPort;{!!.03}
procedure CMCtl3DChanged(var Msg : TMessage); message CM_CTL3DCHANGED;
procedure CMFontChanged(var Msg : TMessage); message CM_FONTCHANGED;
procedure CNKeyDown(var Msg : TWMKeyDown); message CN_KEYDOWN;
procedure CNSysKeyDown(var Msg : TWMKeyDown); message CN_SYSKEYDOWN;
procedure tmBeat(Sender: TObject);
procedure tmTriggerHandler(Msg, wParam : Cardinal; lParam : longint);
procedure WMCancelMode(var Msg : TMessage); message WM_CANCELMODE;
procedure WMCopy(var Msg : TMessage); message WM_COPY;
procedure WMEraseBkgnd(var Msg : TMessage); message WM_ERASEBKGND;
procedure WMGetDlgCode(var Msg : TMessage); message WM_GETDLGCODE;
procedure WMHScroll(var Msg : TWMScroll); message WM_HSCROLL;
procedure WMKillFocus(var Msg: TWMSetFocus); message WM_KILLFOCUS;
procedure WMPaint(var Msg : TWMPaint); message WM_PAINT;
procedure WMPaste (var Msg : TWMPaste); message WM_PASTE; {!!.04}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -