mirror of https://gitlab.com/basile.b/dexed.git
#59, add a preset editor
This commit is contained in:
parent
7c041b5bb9
commit
d2fc677f97
|
@ -5,9 +5,9 @@ interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, SynEditMiscClasses, Graphics, Controls, StdCtrls, ExtCtrls,
|
Classes, SysUtils, SynEditMiscClasses, Graphics, Controls, StdCtrls, ExtCtrls,
|
||||||
SynEditHighlighter, SynEditTypes,
|
SynEditHighlighter, SynEditTypes, SynEdit, RTTIGrids, Buttons,
|
||||||
ce_interfaces, ce_common, ce_writableComponent, ce_d2syn, ce_observer,
|
ce_interfaces, ce_common, ce_writableComponent, ce_d2syn, ce_observer,
|
||||||
ce_editoroptions;
|
ce_editoroptions, ce_sharedres;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ type
|
||||||
fIdentifierMarkup: TSynSelectedColor;
|
fIdentifierMarkup: TSynSelectedColor;
|
||||||
fMouseLinkAttribs: TSynSelectedColor;
|
fMouseLinkAttribs: TSynSelectedColor;
|
||||||
fSelAttribs: TSynSelectedColor;
|
fSelAttribs: TSynSelectedColor;
|
||||||
fd2syn: TSynD2Syn;
|
fd2syn: TPersistent;
|
||||||
fName: string;
|
fName: string;
|
||||||
procedure setBracketMatchColor(value: TSynSelectedColor);
|
procedure setBracketMatchColor(value: TSynSelectedColor);
|
||||||
procedure setCurrLineAttribs(value: TSynSelectedColor);
|
procedure setCurrLineAttribs(value: TSynSelectedColor);
|
||||||
|
@ -42,10 +42,11 @@ type
|
||||||
procedure setIdentifierMarkup(value: TSynSelectedColor);
|
procedure setIdentifierMarkup(value: TSynSelectedColor);
|
||||||
procedure setMouseLinkColor(value: TSynSelectedColor);
|
procedure setMouseLinkColor(value: TSynSelectedColor);
|
||||||
procedure setSelCol(value: TSynSelectedColor);
|
procedure setSelCol(value: TSynSelectedColor);
|
||||||
procedure setD2syn(value: TSynD2Syn);
|
procedure setD2syn(value: TPersistent);
|
||||||
|
function getHl: TSynD2Syn;
|
||||||
published
|
published
|
||||||
property name: string read fName write fName;
|
property name: string read fName write fName;
|
||||||
property highlighter: TSynD2Syn read fd2syn write setD2Syn;
|
property highlighter: TPersistent read fd2syn write setD2Syn;
|
||||||
property background: TColor read fBackground write fBackground default clWhite;
|
property background: TColor read fBackground write fBackground default clWhite;
|
||||||
property bracketMatch: TSynSelectedColor read fBracketMatchAttribs write setBracketMatchColor;
|
property bracketMatch: TSynSelectedColor read fBracketMatchAttribs write setBracketMatchColor;
|
||||||
property currentLine: TSynSelectedColor read fCurrLineAttribs write setCurrLineAttribs;
|
property currentLine: TSynSelectedColor read fCurrLineAttribs write setCurrLineAttribs;
|
||||||
|
@ -65,10 +66,13 @@ type
|
||||||
fCollection: TCollection;
|
fCollection: TCollection;
|
||||||
procedure setCollection(value: TCollection);
|
procedure setCollection(value: TCollection);
|
||||||
function getPreset(index: integer): TCED2SynPreset;
|
function getPreset(index: integer): TCED2SynPreset;
|
||||||
|
published
|
||||||
|
property presets: TCollection read fCollection write setCollection;
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
function addPreset: TCED2SynPreset;
|
function addPreset: TCED2SynPreset;
|
||||||
|
function count: integer;
|
||||||
property preset[index: integer]: TCED2SynPreset read getPreset ; default;
|
property preset[index: integer]: TCED2SynPreset read getPreset ; default;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -78,14 +82,21 @@ type
|
||||||
TCED2SynPresetsLoaderForm = class(TWinControl, ICEEditableOptions)
|
TCED2SynPresetsLoaderForm = class(TWinControl, ICEEditableOptions)
|
||||||
private
|
private
|
||||||
fPresets: TCED2SynPresets;
|
fPresets: TCED2SynPresets;
|
||||||
flstBox: TListBox;
|
fList: TComboBox;
|
||||||
|
fEditor: TSynEdit;
|
||||||
|
fPropEd: TTIPropertyGrid;
|
||||||
fBackup: TCED2SynPreset;
|
fBackup: TCED2SynPreset;
|
||||||
function optionedWantCategory(): string;
|
function optionedWantCategory(): string;
|
||||||
function optionedWantEditorKind: TOptionEditorKind;
|
function optionedWantEditorKind: TOptionEditorKind;
|
||||||
function optionedWantContainer: TPersistent;
|
function optionedWantContainer: TPersistent;
|
||||||
procedure optionedEvent(anEvent: TOptionEditorEvent);
|
procedure optionedEvent(anEvent: TOptionEditorEvent);
|
||||||
function optionedOptionsModified: boolean;
|
function optionedOptionsModified: boolean;
|
||||||
procedure lstBoxChange(sender: TObject);
|
procedure lstBoxSelChange(Sender: TObject);
|
||||||
|
procedure btnAddClick(sender: TObject);
|
||||||
|
procedure btnDelClick(sender: TObject);
|
||||||
|
procedure propEdModified(sender: TObject);
|
||||||
|
procedure updateList;
|
||||||
|
procedure updateEditor;
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
|
@ -124,11 +135,16 @@ begin
|
||||||
inherited;
|
inherited;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCED2SynPreset.setD2syn(value: TSynD2Syn);
|
procedure TCED2SynPreset.setD2syn(value: TPersistent);
|
||||||
begin
|
begin
|
||||||
fd2syn.Assign(value);
|
fd2syn.Assign(value);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TCED2SynPreset.getHl: TSynD2Syn;
|
||||||
|
begin
|
||||||
|
exit(TSynD2Syn(fd2syn));
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TCED2SynPreset.setBracketMatchColor(value: TSynSelectedColor);
|
procedure TCED2SynPreset.setBracketMatchColor(value: TSynSelectedColor);
|
||||||
begin
|
begin
|
||||||
fBracketMatchAttribs.Assign(value);
|
fBracketMatchAttribs.Assign(value);
|
||||||
|
@ -208,6 +224,11 @@ begin
|
||||||
exit(TCED2SynPreset(fCollection.Add));
|
exit(TCED2SynPreset(fCollection.Add));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TCED2SynPresets.count: integer;
|
||||||
|
begin
|
||||||
|
exit(fCollection.Count);
|
||||||
|
end;
|
||||||
|
|
||||||
function TCED2SynPresets.getPreset(index: integer): TCED2SynPreset;
|
function TCED2SynPresets.getPreset(index: integer): TCED2SynPreset;
|
||||||
begin
|
begin
|
||||||
exit(TCED2SynPreset(fCollection.Items[index]));
|
exit(TCED2SynPreset(fCollection.Items[index]));
|
||||||
|
@ -231,49 +252,50 @@ end;
|
||||||
constructor TCED2SynPresetsLoaderForm.Create(AOwner: TComponent);
|
constructor TCED2SynPresetsLoaderForm.Create(AOwner: TComponent);
|
||||||
var
|
var
|
||||||
fname: string;
|
fname: string;
|
||||||
i: integer;
|
pnl: TPanel;
|
||||||
|
btn: TBitBtn;
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
fBackup:= TCED2SynPreset.Create(nil);
|
fBackup:= TCED2SynPreset.Create(nil);
|
||||||
fPresets:= TCED2SynPresets.Create(self);
|
fPresets:= TCED2SynPresets.Create(self);
|
||||||
fname := getCoeditDocPath + optfname;
|
fname := getCoeditDocPath + optfname;
|
||||||
if fname.fileExists then
|
//if fname.fileExists then
|
||||||
fPresets.loadFromFile(fname)
|
//fPresets.loadFromFile(fname)
|
||||||
else begin
|
//else
|
||||||
// Default
|
begin
|
||||||
with fPresets.addPreset do
|
with fPresets.addPreset do
|
||||||
begin
|
begin
|
||||||
fName :='bright';
|
fName :='bright';
|
||||||
fBackground := clWhite;
|
fBackground := clWhite;
|
||||||
fd2syn.whites.define(clNone);
|
getHl.whites.define(clNone);
|
||||||
fd2syn.numbers.define($000079F2);
|
getHl.numbers.define($000079F2);
|
||||||
fd2syn.symbols.define(clMaroon);
|
getHl.symbols.define(clMaroon);
|
||||||
fd2syn.identifiers.define(clBlack);
|
getHl.identifiers.define(clBlack);
|
||||||
fd2syn.comments.define(clGreen,[fsItalic]);
|
getHl.comments.define(clGreen,[fsItalic]);
|
||||||
fd2syn.strings.define(clBlue);
|
getHl.strings.define(clBlue);
|
||||||
fd2syn.keywords.define(clNavy,[fsBold]);
|
getHl.keywords.define(clNavy,[fsBold]);
|
||||||
fd2syn.ddoc.define(clTeal);
|
getHl.ddoc.define(clTeal);
|
||||||
fd2syn.inlineAsm.define(clGray,[fsBold]);
|
getHl.inlineAsm.define(clGray,[fsBold]);
|
||||||
fd2syn.special.define(clNavy,[fsBold]);
|
getHl.special.define(clNavy,[fsBold]);
|
||||||
fd2syn.errors.define(clBlack,[],clNone,clRed,slsWaved,sfeBottom,[]);
|
getHl.errors.define(clBlack,[],clNone,clRed,slsWaved,sfeBottom,[]);
|
||||||
fd2syn.attributes.define(clNavy,[fsBold]);
|
getHl.attributes.define(clNavy,[fsBold]);
|
||||||
end;
|
end;
|
||||||
with fPresets.addPreset do
|
with fPresets.addPreset do
|
||||||
begin
|
begin
|
||||||
fName :='dark';
|
fName :='dark';
|
||||||
fBackground := $00404040;
|
fBackground := $00404040;
|
||||||
fd2syn.whites.define(clNone);
|
getHl.whites.define(clNone);
|
||||||
fd2syn.numbers.define($000079F2,[fsBold]);
|
getHl.numbers.define($F27900,[fsBold]);
|
||||||
fd2syn.symbols.define(clMaroon);
|
getHl.symbols.define(clMaroon);
|
||||||
fd2syn.identifiers.define($00F0EFE1);
|
getHl.identifiers.define($E1EFF0);
|
||||||
fd2syn.comments.define($00C7C7C7,[fsItalic]);
|
getHl.comments.define($C7C7C7,[fsItalic]);
|
||||||
fd2syn.strings.define($ECD284);
|
getHl.strings.define($84D2EC);
|
||||||
fd2syn.keywords.define($0097C793,[fsBold]);
|
getHl.keywords.define($93C797,[fsBold]);
|
||||||
fd2syn.ddoc.define(clTeal);
|
getHl.ddoc.define(clTeal);
|
||||||
fd2syn.inlineAsm.define($00CB84EC,[fsBold]);
|
getHl.inlineAsm.define($EC84CB,[fsBold]);
|
||||||
fd2syn.special.define($0097C793,[fsBold]);
|
getHl.special.define($93C797,[fsBold]);
|
||||||
fd2syn.errors.define($00F0EFE1,[],clNone,clRed,slsWaved,sfeBottom,[]);
|
getHl.errors.define($E1EFF0,[],clNone,clRed,slsWaved,sfeBottom,[]);
|
||||||
fd2syn.attributes.define($0097C793,[fsBold]);
|
getHl.attributes.define($93C797,[fsBold]);
|
||||||
end;
|
end;
|
||||||
with fPresets.addPreset do
|
with fPresets.addPreset do
|
||||||
begin
|
begin
|
||||||
|
@ -287,25 +309,97 @@ begin
|
||||||
end;
|
end;
|
||||||
with fPresets.addPreset do
|
with fPresets.addPreset do
|
||||||
begin
|
begin
|
||||||
fBackground :=clWhite;
|
|
||||||
fName :='Mustard';
|
fName :='Mustard';
|
||||||
|
fBackground := $78C8D3;
|
||||||
|
getHl.whites.define(clNone);
|
||||||
|
getHl.numbers.define($000079F2,[fsBold]);
|
||||||
|
getHl.symbols.define(clMaroon);
|
||||||
|
getHl.identifiers.define($1E2331);
|
||||||
|
getHl.comments.define($4F7184,[fsItalic]);
|
||||||
|
getHl.strings.define($6D82BA);
|
||||||
|
getHl.keywords.define($313A5A,[fsBold]);
|
||||||
|
getHl.ddoc.define($5F8194);
|
||||||
|
getHl.inlineAsm.define($98B7B4,[fsBold]);
|
||||||
|
getHl.special.define($313A5A,[fsBold]);
|
||||||
|
getHl.errors.define($1E2331,[],clNone,clRed,slsWaved,sfeBottom,[]);
|
||||||
|
getHl.attributes.define($313A5A,[fsBold]);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
//
|
//
|
||||||
flstBox := TListBox.Create(self);
|
fEditor := TSynEdit.Create(self);
|
||||||
flstBox.Align:= alClient;
|
fEditor.Parent:= self;
|
||||||
flstBox.BorderSpacing.Around:= 4;
|
fEditor.Height:= 200;
|
||||||
flstBox.Parent := self;
|
fEditor.Align:= alTop;
|
||||||
flstbox.OnClick:=@lstBoxChange;
|
fEditor.ReadOnly:=true;
|
||||||
for i:= 0 to fPresets.fCollection.Count-1 do
|
fEditor.Font.Assign(EditorOptions.font);
|
||||||
flstBox.AddItem(fPresets[i].name, fPresets[i]);
|
fEditor.Font.Size:=12;
|
||||||
|
fEditor.Font.Name:=EditorOptions.font.Name;
|
||||||
|
fEditor.BorderSpacing.Around:= 4;
|
||||||
|
fEditor.ScrollBars:= ssAutoBoth;
|
||||||
|
fEditor.Options:= fEditor.Options - [eoScrollPastEof, eoScrollPastEol];
|
||||||
|
fEditor.SetHighlightSearch('writeln',[]);
|
||||||
|
fEditor.lines.Add('module preview;');
|
||||||
|
fEditor.lines.Add('import std.stdio');
|
||||||
|
fEditor.lines.Add('/// ddoc comment');
|
||||||
|
fEditor.lines.Add('@safe void main(string[] args)');
|
||||||
|
fEditor.lines.Add('{');
|
||||||
|
fEditor.lines.Add(' // writeln is the current identifier');
|
||||||
|
fEditor.lines.Add(' writeln("this is a string");');
|
||||||
|
fEditor.lines.Add(' writeln(__DATE__);');
|
||||||
|
fEditor.lines.Add(' int number = 0xDEADBEEF;');
|
||||||
|
fEditor.lines.Add(' asm{ xor RAX, RAX; }');
|
||||||
|
fEditor.lines.Add(' int error = 12G;');
|
||||||
|
fEditor.lines.Add('}');
|
||||||
|
pnl := TPanel.Create(self);
|
||||||
|
pnl.Parent := self;
|
||||||
|
pnl.BevelOuter:= bvNone;
|
||||||
|
pnl.BevelInner:= bvNone;
|
||||||
|
pnl.Align:=alTop;
|
||||||
|
pnl.BorderSpacing.Around:= 4;
|
||||||
|
pnl.Height:=30;
|
||||||
//
|
//
|
||||||
|
fList := TComboBox.Create(self);
|
||||||
|
fList.Align:= alClient;
|
||||||
|
fList.BorderSpacing.Around:= 4;
|
||||||
|
fList.Parent := pnl;
|
||||||
|
fList.ReadOnly:=true;
|
||||||
|
fList.OnSelect:= @lstBoxSelChange;
|
||||||
|
updateList;
|
||||||
|
//
|
||||||
|
btn := TBitBtn.Create(self);
|
||||||
|
btn.Parent := pnl;
|
||||||
|
btn.Width:= 26;
|
||||||
|
btn.Align:= alRight;
|
||||||
|
btn.BorderSpacing.Around:=2;
|
||||||
|
btn.OnClick:=@btnAddClick;
|
||||||
|
btn.Hint:='add preset';
|
||||||
|
AssignPng(btn, 'document_add');
|
||||||
|
//
|
||||||
|
btn := TBitBtn.Create(self);
|
||||||
|
btn.Parent := pnl;
|
||||||
|
btn.Width:= 26;
|
||||||
|
btn.Align:= alRight;
|
||||||
|
btn.BorderSpacing.Around:=2;
|
||||||
|
btn.OnClick:=@btnDelClick;
|
||||||
|
btn.Hint:='delete preset';
|
||||||
|
AssignPng(btn, 'document_delete');
|
||||||
|
//
|
||||||
|
fPropEd := TTIPropertyGrid.Create(self);
|
||||||
|
fPropEd.Parent := self;
|
||||||
|
fPropEd.Align:= alClient;
|
||||||
|
fPropEd.DefaultValueFont.Color := clGreen;
|
||||||
|
fPropEd.OnModified:=@propEdModified;
|
||||||
|
fPropEd.CheckboxForBoolean:=true;
|
||||||
|
fPropEd.PropertyEditorHook.AddHandlerModified(@propEdModified);
|
||||||
|
//
|
||||||
|
fList.ItemIndex := 0;
|
||||||
|
lstBoxSelChange(nil);
|
||||||
EntitiesConnector.addObserver(self);
|
EntitiesConnector.addObserver(self);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
destructor TCED2SynPresetsLoaderForm.Destroy;
|
destructor TCED2SynPresetsLoaderForm.Destroy;
|
||||||
begin
|
begin
|
||||||
//fPresets.saveToFile(getCoeditDocPath + optfname);
|
fPresets.saveToFile(getCoeditDocPath + optfname);
|
||||||
fBackup.Free;
|
fBackup.Free;
|
||||||
EntitiesConnector.removeObserver(self);
|
EntitiesConnector.removeObserver(self);
|
||||||
inherited;
|
inherited;
|
||||||
|
@ -329,7 +423,11 @@ end;
|
||||||
procedure TCED2SynPresetsLoaderForm.optionedEvent(anEvent: TOptionEditorEvent);
|
procedure TCED2SynPresetsLoaderForm.optionedEvent(anEvent: TOptionEditorEvent);
|
||||||
begin
|
begin
|
||||||
case anEvent of
|
case anEvent of
|
||||||
oeeAccept: fBackup.assignFromOptions;
|
oeeAccept:
|
||||||
|
begin
|
||||||
|
fPresets[fList.ItemIndex].assignToOptions;
|
||||||
|
fBackup.assignFromOptions;
|
||||||
|
end;
|
||||||
oeeCancel: fBackup.assignToOptions;
|
oeeCancel: fBackup.assignToOptions;
|
||||||
oeeSelectCat: fBackup.assignFromOptions;
|
oeeSelectCat: fBackup.assignFromOptions;
|
||||||
end;
|
end;
|
||||||
|
@ -340,11 +438,70 @@ begin
|
||||||
exit(false);
|
exit(false);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCED2SynPresetsLoaderForm.lstBoxChange(sender: TObject);
|
procedure TCED2SynPresetsLoaderForm.lstBoxSelChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
if flstBox.ItemIndex = -1 then
|
if fList.ItemIndex <> -1 then
|
||||||
|
begin
|
||||||
|
fPropEd.TIObject := fPresets[fList.ItemIndex];
|
||||||
|
fPropEd.SplitterX:= (fPropEd.Width - 20) div 2;
|
||||||
|
fPropEd.PreferredSplitterX:= fPropEd.SplitterX;
|
||||||
|
fEditor.Highlighter := fPresets[fList.ItemIndex].getHl;
|
||||||
|
updateEditor;
|
||||||
|
end else
|
||||||
|
fPropEd.TIObject := nil;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCED2SynPresetsLoaderForm.btnAddClick(sender: TObject);
|
||||||
|
var
|
||||||
|
prs: TCED2SynPreset;
|
||||||
|
begin
|
||||||
|
prs := fPresets.addPreset;
|
||||||
|
prs.name := format('preset %d', [fPresets.count]);
|
||||||
|
updateList;
|
||||||
|
fList.ItemIndex := prs.Index;
|
||||||
|
lstBoxSelChange(nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCED2SynPresetsLoaderForm.btnDelClick(sender: TObject);
|
||||||
|
begin
|
||||||
|
fPresets.fCollection.Delete(fList.ItemIndex);
|
||||||
|
updateList;
|
||||||
|
lstBoxSelChange(nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCED2SynPresetsLoaderForm.propEdModified(sender: TObject);
|
||||||
|
begin
|
||||||
|
updateEditor;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCED2SynPresetsLoaderForm.updateList;
|
||||||
|
var
|
||||||
|
i, j: integer;
|
||||||
|
begin
|
||||||
|
fList.OnChange:=nil;
|
||||||
|
j := fList.ItemIndex;
|
||||||
|
fList.Clear;
|
||||||
|
for i:= 0 to fPresets.count-1 do
|
||||||
|
fList.AddItem(fPresets[i].name, fPresets[i]);
|
||||||
|
if (j <> -1) and (j < fPresets.count) then
|
||||||
|
fList.ItemIndex := j;
|
||||||
|
fList.OnChange:=@lstBoxSelChange;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TCED2SynPresetsLoaderForm.updateEditor;
|
||||||
|
var
|
||||||
|
p: TCED2SynPreset;
|
||||||
|
begin
|
||||||
|
if fList.ItemIndex = -1 then
|
||||||
exit;
|
exit;
|
||||||
fPresets[flstBox.ItemIndex].assignToOptions;
|
p := fPresets[fList.ItemIndex];
|
||||||
|
fEditor.Color := p.background;
|
||||||
|
fEditor.SelectedColor := p.selection;
|
||||||
|
fEditor.HighlightAllColor := p.identifierMatch;
|
||||||
|
fEditor.LineHighlightColor := p.currentLine;
|
||||||
|
fEditor.FoldedCodeColor := p.folding;
|
||||||
|
fEditor.MouseLinkColor := p.mouseLink;
|
||||||
|
fEditor.BracketMatchColor := p.bracketMatch;
|
||||||
end;
|
end;
|
||||||
{$ENDREGION}
|
{$ENDREGION}
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ inherited CEOptionEditorWidget: TCEOptionEditorWidget
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 451
|
Height = 451
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 140
|
Width = 150
|
||||||
Align = alLeft
|
Align = alLeft
|
||||||
AutoExpand = True
|
AutoExpand = True
|
||||||
DefaultItemHeight = 16
|
DefaultItemHeight = 16
|
||||||
|
@ -48,20 +48,20 @@ inherited CEOptionEditorWidget: TCEOptionEditorWidget
|
||||||
Options = [tvoAutoExpand, tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
Options = [tvoAutoExpand, tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
||||||
end
|
end
|
||||||
object pnlEd: TPanel
|
object pnlEd: TPanel
|
||||||
Left = 146
|
Left = 156
|
||||||
Height = 451
|
Height = 451
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 405
|
Width = 395
|
||||||
Align = alClient
|
Align = alClient
|
||||||
BevelOuter = bvNone
|
BevelOuter = bvNone
|
||||||
ClientHeight = 451
|
ClientHeight = 451
|
||||||
ClientWidth = 405
|
ClientWidth = 395
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
object inspector: TTIPropertyGrid
|
object inspector: TTIPropertyGrid
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 451
|
Height = 451
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 405
|
Width = 395
|
||||||
Align = alClient
|
Align = alClient
|
||||||
CheckboxForBoolean = False
|
CheckboxForBoolean = False
|
||||||
DefaultValueFont.Color = clWindowText
|
DefaultValueFont.Color = clWindowText
|
||||||
|
@ -76,7 +76,7 @@ inherited CEOptionEditorWidget: TCEOptionEditorWidget
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object Splitter1: TSplitter
|
object Splitter1: TSplitter
|
||||||
Left = 140
|
Left = 150
|
||||||
Height = 451
|
Height = 451
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 6
|
Width = 6
|
||||||
|
|
Loading…
Reference in New Issue