mirror of https://gitlab.com/basile.b/dexed.git
fix blinking terminal on each keystroke + fix font assign not triggering FontChanged()
This commit is contained in:
parent
14fad39190
commit
40594f3e01
|
@ -5,8 +5,6 @@ inherited CETermWidget: TCETermWidget
|
||||||
Caption = 'Terminal'
|
Caption = 'Terminal'
|
||||||
ClientHeight = 296
|
ClientHeight = 296
|
||||||
ClientWidth = 674
|
ClientWidth = 674
|
||||||
OnClick = FormResize
|
|
||||||
OnResize = FormResize
|
|
||||||
inherited Back: TPanel
|
inherited Back: TPanel
|
||||||
Height = 296
|
Height = 296
|
||||||
Width = 674
|
Width = 674
|
||||||
|
@ -16,6 +14,7 @@ inherited CETermWidget: TCETermWidget
|
||||||
Height = 260
|
Height = 260
|
||||||
Top = 36
|
Top = 36
|
||||||
Width = 674
|
Width = 674
|
||||||
|
OnPaint = ContentPaint
|
||||||
end
|
end
|
||||||
inherited toolbar: TCEToolBar
|
inherited toolbar: TCEToolBar
|
||||||
Width = 666
|
Width = 666
|
||||||
|
|
|
@ -51,11 +51,11 @@ type
|
||||||
{ TCETermWidget }
|
{ TCETermWidget }
|
||||||
|
|
||||||
TCETermWidget = class(TCEWidget, ICEDocumentObserver, ICEProjectObserver)
|
TCETermWidget = class(TCEWidget, ICEDocumentObserver, ICEProjectObserver)
|
||||||
procedure FormResize(Sender: TObject);
|
procedure ContentPaint(Sender: TObject);
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
private
|
private
|
||||||
fTerm: TTerminal;
|
fTerm: TTerminal;
|
||||||
fOpts: TCETerminalOptions;
|
fOpts: TCETerminalOptions;
|
||||||
|
fFirst: boolean;
|
||||||
|
|
||||||
procedure docNew(document: TCESynMemo);
|
procedure docNew(document: TCESynMemo);
|
||||||
procedure docFocused(document: TCESynMemo);
|
procedure docFocused(document: TCESynMemo);
|
||||||
|
@ -69,10 +69,7 @@ type
|
||||||
procedure projCompiling(project: ICECommonProject);
|
procedure projCompiling(project: ICECommonProject);
|
||||||
procedure projCompiled(project: ICECommonProject; success: boolean);
|
procedure projCompiled(project: ICECommonProject; success: boolean);
|
||||||
|
|
||||||
procedure dockingChanged(sender: TCEWidget; newState: TWidgetDockingState);
|
|
||||||
|
|
||||||
protected
|
protected
|
||||||
procedure DoFirstShow; override;
|
|
||||||
|
|
||||||
public
|
public
|
||||||
constructor create(aOwner: TComponent); override;
|
constructor create(aOwner: TComponent); override;
|
||||||
|
@ -118,7 +115,11 @@ begin
|
||||||
fForegroundColor:=s.fForegroundColor;
|
fForegroundColor:=s.fForegroundColor;
|
||||||
fSelectedColor:=s.fSelectedColor;
|
fSelectedColor:=s.fSelectedColor;
|
||||||
followEditors:=s.fFollowEditors;
|
followEditors:=s.fFollowEditors;
|
||||||
|
fFont.BeginUpdate;
|
||||||
|
fFont.Height:=fFont.Height+1;
|
||||||
|
fFont.Height:=fFont.Height-1;
|
||||||
fFont.Assign(s.font);
|
fFont.Assign(s.font);
|
||||||
|
fFont.EndUpdate;
|
||||||
end
|
end
|
||||||
else inherited;
|
else inherited;
|
||||||
end;
|
end;
|
||||||
|
@ -195,8 +196,6 @@ begin
|
||||||
fTerm.Align:= alClient;
|
fTerm.Align:= alClient;
|
||||||
fTerm.BorderSpacing.Around:=4;
|
fTerm.BorderSpacing.Around:=4;
|
||||||
fterm.Parent := self;
|
fterm.Parent := self;
|
||||||
fTerm.OnTerminalVisibleChanged:=@FormShow;
|
|
||||||
self.onDockingChanged:=@dockingChanged;
|
|
||||||
|
|
||||||
fOpts:= TCETerminalOptions.Create(self);
|
fOpts:= TCETerminalOptions.Create(self);
|
||||||
|
|
||||||
|
@ -214,29 +213,7 @@ begin
|
||||||
inherited;
|
inherited;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCETermWidget.dockingChanged(sender: TCEWidget; newState: TWidgetDockingState);
|
procedure TCETermWidget.ContentPaint(Sender: TObject);
|
||||||
begin
|
|
||||||
{$IFDEF WINDOWS}
|
|
||||||
fTerm.Restart;
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCETermWidget.DoFirstShow;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
{$IFDEF WINDOWS}
|
|
||||||
fTerm.Restart;
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCETermWidget.FormResize(Sender: TObject);
|
|
||||||
begin
|
|
||||||
{$IFDEF WINDOWS}
|
|
||||||
fTerm.Reparent;
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCETermWidget.FormShow(Sender: TObject);
|
|
||||||
begin
|
begin
|
||||||
fOpts.applyChanges;
|
fOpts.applyChanges;
|
||||||
end;
|
end;
|
||||||
|
|
Loading…
Reference in New Issue