mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-07 08:58:15 +02:00
sparta: update fake menu on modification
git-svn-id: trunk@51295 -
This commit is contained in:
parent
1cba70270b
commit
476ee9dad4
@ -174,7 +174,9 @@ type
|
|||||||
|
|
||||||
class procedure OnShowMethod(const Name: String);
|
class procedure OnShowMethod(const Name: String);
|
||||||
class procedure OnDesignRefreshPropertyValues;
|
class procedure OnDesignRefreshPropertyValues;
|
||||||
class procedure OnMenuChanged;
|
class procedure OnModifiedPersistentAdded(APersistent: TPersistent; Select: Boolean);
|
||||||
|
class procedure OnModifiedSender(Sender: TObject);
|
||||||
|
class procedure OnModified;
|
||||||
class procedure DesignerSetFocus;
|
class procedure DesignerSetFocus;
|
||||||
class procedure OnDesignMouseDown(Sender: TObject; Button: TMouseButton;
|
class procedure OnDesignMouseDown(Sender: TObject; Button: TMouseButton;
|
||||||
Shift: TShiftState; X, Y: Integer);
|
Shift: TShiftState; X, Y: Integer);
|
||||||
@ -464,9 +466,6 @@ begin
|
|||||||
RepaintFormImages;
|
RepaintFormImages;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (TheMessage.msg = CM_MENUCHANGED) and (Form.Form is TFakeForm) then
|
|
||||||
TSpartaMainIDE.OnMenuChanged;
|
|
||||||
|
|
||||||
// during docking, form position was in wrong place... we need to delay changing position :)
|
// during docking, form position was in wrong place... we need to delay changing position :)
|
||||||
if TheMessage.msg = WM_BoundToDesignTabSheet then
|
if TheMessage.msg = WM_BoundToDesignTabSheet then
|
||||||
if Form.LastActiveSourceWindow <> nil then
|
if Form.LastActiveSourceWindow <> nil then
|
||||||
@ -1494,13 +1493,24 @@ begin
|
|||||||
DesignerSetFocus;
|
DesignerSetFocus;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TSpartaMainIDE.OnMenuChanged;
|
class procedure TSpartaMainIDE.OnModifiedSender(Sender: TObject);
|
||||||
|
begin
|
||||||
|
OnModified;
|
||||||
|
end;
|
||||||
|
|
||||||
|
class procedure TSpartaMainIDE.OnModified;
|
||||||
var
|
var
|
||||||
LResizer: TResizer;
|
LResizer: TResizer;
|
||||||
begin
|
begin
|
||||||
LResizer := GetCurrentResizer;
|
LResizer := GetCurrentResizer;
|
||||||
if LResizer<>nil then
|
if LResizer<>nil then
|
||||||
LResizer.FResizerFrame.OnMenuChanged;
|
LResizer.FResizerFrame.OnModified;
|
||||||
|
end;
|
||||||
|
|
||||||
|
class procedure TSpartaMainIDE.OnModifiedPersistentAdded(
|
||||||
|
APersistent: TPersistent; Select: Boolean);
|
||||||
|
begin
|
||||||
|
OnModified;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TSpartaMainIDE.OnShowDesignerForm(Sender: TObject; AEditor: TSourceEditorInterface;
|
class procedure TSpartaMainIDE.OnShowDesignerForm(Sender: TObject; AEditor: TSourceEditorInterface;
|
||||||
|
@ -46,6 +46,9 @@ begin
|
|||||||
LazarusIDE.AddHandlerOnShowSourceOfActiveDesignerForm(TSpartaMainIDE.OnShowSrcEditor);
|
LazarusIDE.AddHandlerOnShowSourceOfActiveDesignerForm(TSpartaMainIDE.OnShowSrcEditor);
|
||||||
|
|
||||||
GlobalDesignHook.AddHandlerShowMethod(TSpartaMainIDE.OnShowMethod);
|
GlobalDesignHook.AddHandlerShowMethod(TSpartaMainIDE.OnShowMethod);
|
||||||
|
GlobalDesignHook.AddHandlerModified(TSpartaMainIDE.OnModifiedSender);
|
||||||
|
GlobalDesignHook.AddHandlerPersistentAdded(TSpartaMainIDE.OnModifiedPersistentAdded);
|
||||||
|
GlobalDesignHook.AddHandlerPersistentDeleted(TSpartaMainIDE.OnModified);
|
||||||
GlobalDesignHook.AddHandlerRefreshPropertyValues(TSpartaMainIDE.OnDesignRefreshPropertyValues);
|
GlobalDesignHook.AddHandlerRefreshPropertyValues(TSpartaMainIDE.OnDesignRefreshPropertyValues);
|
||||||
GlobalDesignHook.AddHandlerDesignerMouseDown(TSpartaMainIDE.OnDesignMouseDown);
|
GlobalDesignHook.AddHandlerDesignerMouseDown(TSpartaMainIDE.OnDesignMouseDown);
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ type
|
|||||||
FActivePropertyGridItemIndex: Integer;
|
FActivePropertyGridItemIndex: Integer;
|
||||||
FLastClientWidth, FLastClientHeight: Integer;
|
FLastClientWidth, FLastClientHeight: Integer;
|
||||||
FOldHasMainMenu: Boolean;
|
FOldHasMainMenu: Boolean;
|
||||||
FMenuChanged: Boolean;
|
FDesignerModified: Boolean;
|
||||||
|
|
||||||
function HasMainMenu: Boolean;
|
function HasMainMenu: Boolean;
|
||||||
procedure AppOnIdle(Sender: TObject; var Done: Boolean);
|
procedure AppOnIdle(Sender: TObject; var Done: Boolean);
|
||||||
@ -135,7 +135,7 @@ type
|
|||||||
procedure ShowSizeRects;
|
procedure ShowSizeRects;
|
||||||
procedure ShowSizeControls;
|
procedure ShowSizeControls;
|
||||||
|
|
||||||
procedure OnMenuChanged;
|
procedure OnModified;
|
||||||
procedure DesignerSetFocus;
|
procedure DesignerSetFocus;
|
||||||
|
|
||||||
property VerticalScrollPos: Integer read FVerticalScrollPos write FVerticalScrollPos;
|
property VerticalScrollPos: Integer read FVerticalScrollPos write FVerticalScrollPos;
|
||||||
@ -633,9 +633,9 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TResizerFrame.OnMenuChanged;
|
procedure TResizerFrame.OnModified;
|
||||||
begin
|
begin
|
||||||
FMenuChanged := True;
|
FDesignerModified := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TResizerFrame.GetRightMargin: Integer;
|
function TResizerFrame.GetRightMargin: Integer;
|
||||||
@ -834,7 +834,7 @@ end;
|
|||||||
|
|
||||||
procedure TResizerFrame.AppOnIdle(Sender: TObject; var Done: Boolean);
|
procedure TResizerFrame.AppOnIdle(Sender: TObject; var Done: Boolean);
|
||||||
begin
|
begin
|
||||||
if FMenuChanged then
|
if FDesignerModified then
|
||||||
begin
|
begin
|
||||||
if FOldHasMainMenu <> HasMainMenu then
|
if FOldHasMainMenu <> HasMainMenu then
|
||||||
begin
|
begin
|
||||||
@ -843,9 +843,9 @@ begin
|
|||||||
OnNodePositioning(Self, [pkBottom], pcPositioningEnd);
|
OnNodePositioning(Self, [pkBottom], pcPositioningEnd);
|
||||||
Application.NotifyUserInputHandler(Self, 0); // force repaint invisible components
|
Application.NotifyUserInputHandler(Self, 0); // force repaint invisible components
|
||||||
end else
|
end else
|
||||||
pFakeMenu.Invalidate;
|
pFakeMenu.Invalidate; // always repaint menu on modification
|
||||||
|
|
||||||
FMenuChanged := False;
|
FDesignerModified := False;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user