mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-29 09:43:16 +02:00
172 lines
6.6 KiB
ObjectPascal
172 lines
6.6 KiB
ObjectPascal
unit sparta_InterfacesMDI;
|
|
|
|
{$WARNING Package Sparta_MDI is deprecated}
|
|
{$WARNING It will be removed from Lazarus sources in next major release}
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, Controls, Forms, ExtCtrls;
|
|
|
|
type
|
|
IDesignedRealForm = interface
|
|
['{AAEC32EE-4ABE-4691-A172-FC67B66118DD}']
|
|
// bounds
|
|
function GetRealBounds(AIndex: Integer): Integer;
|
|
procedure SetRealBounds(AIndex: Integer; AValue: Integer);
|
|
|
|
property RealLeft: Integer index 0 read GetRealBounds write SetRealBounds;
|
|
property RealTop: Integer index 1 read GetRealBounds write SetRealBounds;
|
|
property RealWidth: Integer index 2 read GetRealBounds write SetRealBounds;
|
|
property RealHeight: Integer index 3 read GetRealBounds write SetRealBounds;
|
|
|
|
// setters
|
|
procedure SetRealBorderStyle(AVal: TFormBorderStyle);
|
|
procedure SetRealBorderIcons(AVal: TBorderIcons);
|
|
procedure SetRealFormStyle(AVal: TFormStyle);
|
|
procedure SetRealPopupMode(AVal: TPopupMode);
|
|
procedure SetRealPopupParent(AVal: TCustomForm);
|
|
|
|
// getters
|
|
function GetRealBorderStyle: TFormBorderStyle;
|
|
function GetRealBorderIcons: TBorderIcons;
|
|
function GetRealFormStyle: TFormStyle;
|
|
function GetRealPopupMode: TPopupMode;
|
|
function GetRealPopupParent: TCustomForm;
|
|
|
|
// properties
|
|
property RealBorderStyle: TFormBorderStyle read GetRealBorderStyle write SetRealBorderStyle;
|
|
property RealBorderIcons: TBorderIcons read GetRealBorderIcons write SetRealBorderIcons;
|
|
property RealFormStyle: TFormStyle read GetRealFormStyle write SetRealFormStyle;
|
|
|
|
property RealPopupMode: TPopupMode read GetRealPopupMode write SetRealPopupMode;
|
|
property RealPopupParent: TCustomForm read GetRealPopupParent write SetRealPopupParent;
|
|
end;
|
|
|
|
IDesignedForm = interface(IDesignedRealForm)
|
|
['{5D30C0DE-4D51-4FB5-99FC-88900FAE6B66}']
|
|
procedure BeginUpdate;
|
|
procedure EndUpdate(AModified: Boolean = False);
|
|
|
|
function GetUpdate: Boolean;
|
|
property Update: Boolean read GetUpdate;
|
|
|
|
procedure ShowWindow;
|
|
procedure HideWindow;
|
|
function PositionDelta: TPoint;
|
|
|
|
// hacked values
|
|
function GetPublishedBounds(AIndex: Integer): Integer;
|
|
procedure SetPublishedBounds(AIndex: Integer; AValue: Integer);
|
|
property Left: Integer index 0 read GetPublishedBounds write SetPublishedBounds;
|
|
property Top: Integer index 1 read GetPublishedBounds write SetPublishedBounds;
|
|
property Width: Integer index 2 read GetPublishedBounds write SetPublishedBounds;
|
|
property Height: Integer index 3 read GetPublishedBounds write SetPublishedBounds;
|
|
|
|
// design form scroll system
|
|
procedure SetHorzScrollPosition(AValue: Integer);
|
|
procedure SetVertScrollPosition(AValue: Integer);
|
|
function GetHorzScrollPosition: Integer;
|
|
function GetVertScrollPosition: Integer;
|
|
property HorzScrollPosition: Integer read GetHorzScrollPosition write SetHorzScrollPosition;
|
|
property VertScrollPosition: Integer read GetVertScrollPosition write SetVertScrollPosition;
|
|
|
|
// on notify change
|
|
procedure SetOnChangeHackedBounds(const AValue: TNotifyEvent);
|
|
function GetOnChangeHackedBounds: TNotifyEvent;
|
|
property OnChangeHackedBounds: TNotifyEvent read GetOnChangeHackedBounds write SetOnChangeHackedBounds;
|
|
|
|
//
|
|
function GetForm: TCustomForm;
|
|
property Form: TCustomForm read GetForm;
|
|
end;
|
|
|
|
IDesignedRealFormHelper = interface(IDesignedRealForm)
|
|
['{7EF20246-A8B4-4919-8C33-20E07C24F0E9}']
|
|
function GetLogicalClientRect(ALogicalClientRect: TRect): TRect;
|
|
end;
|
|
|
|
IResizeFrame = interface
|
|
['{A674B2AF-4984-433D-8872-5B5825F345D7}']
|
|
procedure HideSizeRects;
|
|
procedure ShowSizeRects;
|
|
procedure PositionNodes;
|
|
function DesignedWidthToScroll: Integer;
|
|
function DesignedHeightToScroll: Integer;
|
|
procedure ClientChangeBounds;
|
|
procedure DesignerSetFocus;
|
|
procedure OnModified;
|
|
|
|
function GetFrame: TCustomFrame;
|
|
function GetVerticalScrollPos: Integer;
|
|
procedure SetVerticalScrollPos(AValue: Integer);
|
|
function GetHorizontalScrollPos: Integer;
|
|
procedure SetHorizontalScrollPos(AValue: Integer);
|
|
function GetBackgroundPanel: TPanel;
|
|
function GetBackgroundMargin(const AIndex: Integer): Integer;
|
|
function GetNewSize: TPoint;
|
|
function GetFormHandler: TPanel;
|
|
function GetNodePositioning: Boolean;
|
|
function GetDesignedForm: IDesignedForm;
|
|
procedure SetDesignedForm(const AValue: IDesignedForm);
|
|
|
|
function GetSizerRectSize: Integer;
|
|
function GetSizerLineWidth: Integer;
|
|
|
|
property Frame: TCustomFrame read GetFrame;
|
|
property VerticalScrollPos: Integer read GetVerticalScrollPos write SetVerticalScrollPos;
|
|
property HorizontalScrollPos: Integer read GetHorizontalScrollPos write SetHorizontalScrollPos;
|
|
property BgPanel: TPanel read GetBackgroundPanel;
|
|
|
|
property BgLeftMargin: Integer index 0 read GetBackgroundMargin;
|
|
property BgTopMargin: Integer index 1 read GetBackgroundMargin;
|
|
property BgRightMargin: Integer index 2 read GetBackgroundMargin;
|
|
property BgBottomMargin: Integer index 3 read GetBackgroundMargin;
|
|
|
|
property NewSize: TPoint read GetNewSize;
|
|
property FormHandler: TPanel read GetFormHandler;
|
|
property NodePositioning: Boolean read GetNodePositioning;
|
|
property DesignedForm: IDesignedForm read GetDesignedForm write SetDesignedForm;
|
|
|
|
property SizerRectSize: Integer read GetSizerRectSize;
|
|
property SizerLineWidth: Integer read GetSizerLineWidth;
|
|
end;
|
|
|
|
IDesignedFormBackground = interface
|
|
['{AC7F6594-1C2D-4424-977B-28053A79CE99}']
|
|
function GetMargin(const AIndex: Integer): Integer;
|
|
|
|
property LeftMargin: Integer index 0 read GetMargin;
|
|
property TopMargin: Integer index 1 read GetMargin;
|
|
property RightMargin: Integer index 2 read GetMargin;
|
|
property BottomMargin: Integer index 3 read GetMargin;
|
|
|
|
procedure SetParent(AValue: TWinControl);
|
|
function GetParent: TWinControl;
|
|
property Parent: TWinControl read GetParent write SetParent;
|
|
|
|
function GetDesignedForm: IDesignedForm;
|
|
property DesignedForm: IDesignedForm read GetDesignedForm;
|
|
|
|
function GetResizeFrame: IResizeFrame;
|
|
procedure SetResizeFrame(AValue: IResizeFrame);
|
|
property ResizeFrame: IResizeFrame read GetResizeFrame write SetResizeFrame;
|
|
|
|
procedure RefreshValues;
|
|
end;
|
|
|
|
IResizer = interface
|
|
['{C3D1A2C0-8AED-493B-9809-1F5C3A54A8A8}']
|
|
procedure TryBoundSizerToDesignedForm(Sender: TObject);
|
|
function GetActiveResizeFrame: IResizeFrame;
|
|
property ActiveResizeFrame: IResizeFrame read GetActiveResizeFrame;
|
|
function GetActiveDesignedForm: IDesignedForm;
|
|
property ActiveDesignedForm: IDesignedForm read GetActiveDesignedForm;
|
|
end;
|
|
|
|
implementation
|
|
|
|
end.
|
|
|