anchordocking: popup menu for pages: move left, right, leftmost, rightmost

git-svn-id: trunk@26055 -
This commit is contained in:
mattias 2010-06-12 11:10:13 +00:00
parent 273c00afd1
commit 2e6532e101
2 changed files with 47 additions and 0 deletions

View File

@ -178,6 +178,10 @@ type
procedure PopupMenuPopup(Sender: TObject); virtual;
procedure CloseButtonClick(Sender: TObject); virtual;
procedure ChangeLockButtonClick(Sender: TObject); virtual;
procedure MoveLeftButtonClick(Sender: TObject); virtual;
procedure MoveLeftMostButtonClick(Sender: TObject); virtual;
procedure MoveRightButtonClick(Sender: TObject); virtual;
procedure MoveRightMostButtonClick(Sender: TObject); virtual;
public
constructor Create(TheOwner: TComponent); override;
procedure UpdateDockCaption(Exclude: TControl = nil); override;
@ -3864,6 +3868,21 @@ begin
ChangeLockItem.Checked:=not DockMaster.AllowDragging;
ChangeLockItem.ShowAlwaysCheckable:=true;
if PageIndex>0 then
DockMaster.AddPopupMenuItem('MoveLeftMenuItem', adrsMovePageLeft,
@MoveLeftButtonClick);
if PageIndex>1 then
DockMaster.AddPopupMenuItem('MoveLeftMostMenuItem', adrsMovePageLeftmost,
@MoveLeftMostButtonClick);
if PageIndex<PageCount-1 then
DockMaster.AddPopupMenuItem('MoveRightMenuItem', adrsMovePageRight,
@MoveRightButtonClick);
if PageIndex<PageCount-2 then
DockMaster.AddPopupMenuItem('MoveRightMostMenuItem', adrsMovePageRightmost,
@MoveRightMostButtonClick);
// close
ContainsMainForm:=IsParentOf(Application.MainForm);
if ContainsMainForm then
@ -3888,6 +3907,30 @@ begin
DockMaster.AllowDragging:=not DockMaster.AllowDragging;
end;
procedure TAnchorDockPageControl.MoveLeftButtonClick(Sender: TObject);
begin
if PageIndex>0 then
Page[PageIndex].PageIndex:=Page[PageIndex].PageIndex-1;
end;
procedure TAnchorDockPageControl.MoveLeftMostButtonClick(Sender: TObject);
begin
if PageIndex>0 then
Page[PageIndex].PageIndex:=0;
end;
procedure TAnchorDockPageControl.MoveRightButtonClick(Sender: TObject);
begin
if PageIndex<PageCount-1 then
Page[PageIndex].PageIndex:=Page[PageIndex].PageIndex+1;
end;
procedure TAnchorDockPageControl.MoveRightMostButtonClick(Sender: TObject);
begin
if PageIndex<PageCount-1 then
Page[PageIndex].PageIndex:=PageCount-1;
end;
procedure TAnchorDockPageControl.UpdateDockCaption(Exclude: TControl);
begin
if Exclude=nil then ;

View File

@ -36,6 +36,8 @@ interface
resourcestring
adrsClose = 'Close';
adrsQuit = 'Quit %s';
adrsMovePageRight = 'Move page right';
adrsMovePageRightmost = 'Move page rightmost';
adrsUndock = 'Undock';
adrsHeaderPosition = 'Header position';
adrsEnlargeSide = 'Enlarge %s side';
@ -47,6 +49,8 @@ resourcestring
adrsRight = 'right';
adrsBottom = 'bottom';
adrsLocked = 'Locked';
adrsMovePageLeft = 'Move page left';
adrsMovePageLeftmost = 'Move page leftmost';
adrsRequestedButCreated = '%s requested, but %s created';
adrsDragAndDockC = 'Drag and dock %c';
adrsMissingControlName = 'missing control name';