mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-11 19:36:32 +02:00
Lcl/Cocoa/TabControl: Tabs dragdrop supported
This commit is contained in:
parent
fee3b05a06
commit
bf6d81c33d
@ -33,6 +33,7 @@ uses
|
||||
type
|
||||
|
||||
ITabControlCallback = interface(ICommonCallback)
|
||||
function shouldSelectTabViewItem(aTabIndex: Integer): Boolean;
|
||||
procedure willSelectTabViewItem(aTabIndex: Integer);
|
||||
procedure didSelectTabViewItem(aTabIndex: Integer);
|
||||
end;
|
||||
@ -529,6 +530,10 @@ function TCocoaTabControl.tabView_shouldSelectTabViewItem(tabView: NSTabView;
|
||||
tabViewItem: NSTabViewItem): Boolean;
|
||||
begin
|
||||
Result := True;
|
||||
if Assigned(callback) then
|
||||
begin
|
||||
Result:= callback.shouldSelectTabViewItem( IndexOfTab( self, tabViewItem) );
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TCocoaTabControl.tabView_willSelectTabViewItem(tabView: NSTabView;
|
||||
|
@ -52,6 +52,7 @@ type
|
||||
{ TLCLTabControlCallback }
|
||||
|
||||
TLCLTabControlCallback = class(TLCLCommonCallback, ITabControlCallback)
|
||||
function shouldSelectTabViewItem(aTabIndex: Integer): Boolean;
|
||||
procedure willSelectTabViewItem(aTabIndex: Integer);
|
||||
procedure didSelectTabViewItem(aTabIndex: Integer);
|
||||
end;
|
||||
@ -439,6 +440,11 @@ end;
|
||||
|
||||
{ TLCLTabControlCallback }
|
||||
|
||||
function TLCLTabControlCallback.shouldSelectTabViewItem(aTabIndex: Integer): Boolean;
|
||||
begin
|
||||
Result:= NOT TTabControl(Target).Dragging;
|
||||
end;
|
||||
|
||||
procedure TLCLTabControlCallback.willSelectTabViewItem(aTabIndex: Integer);
|
||||
var
|
||||
Msg: TLMNotify;
|
||||
|
Loading…
Reference in New Issue
Block a user