Changeset 195 for Docking


Ignore:
Timestamp:
Mar 11, 2011, 2:16:50 PM (14 years ago)
Author:
george
Message:
 
Location:
Docking/CoolDocking
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • Docking/CoolDocking/Demo/IDE/IDE.lpi

    r194 r195  
    4343      </Item3>
    4444    </RequiredPackages>
    45     <Units Count="66">
     45    <Units Count="67">
    4646      <Unit0>
    4747        <Filename Value="IDE.lpr"/>
     
    5151        <TopLine Value="1"/>
    5252        <CursorPos X="1" Y="1"/>
    53         <UsageCount Value="134"/>
     53        <UsageCount Value="136"/>
    5454      </Unit0>
    5555      <Unit1>
     
    6262        <TopLine Value="1"/>
    6363        <CursorPos X="18" Y="3"/>
    64         <UsageCount Value="134"/>
     64        <UsageCount Value="136"/>
    6565      </Unit1>
    6666      <Unit2>
     
    7373        <TopLine Value="1"/>
    7474        <CursorPos X="31" Y="17"/>
    75         <UsageCount Value="134"/>
     75        <UsageCount Value="136"/>
    7676      </Unit2>
    7777      <Unit3>
     
    8484        <TopLine Value="4"/>
    8585        <CursorPos X="37" Y="17"/>
    86         <UsageCount Value="134"/>
     86        <UsageCount Value="136"/>
    8787      </Unit3>
    8888      <Unit4>
     
    9595        <TopLine Value="4"/>
    9696        <CursorPos X="37" Y="17"/>
    97         <UsageCount Value="134"/>
     97        <UsageCount Value="136"/>
    9898      </Unit4>
    9999      <Unit5>
    100100        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\control.inc"/>
    101101        <WindowIndex Value="0"/>
    102         <TopLine Value="3176"/>
    103         <CursorPos X="46" Y="3187"/>
     102        <TopLine Value="1070"/>
     103        <CursorPos X="1" Y="1083"/>
    104104        <UsageCount Value="61"/>
    105105      </Unit5>
     
    113113        <TopLine Value="4"/>
    114114        <CursorPos X="24" Y="17"/>
    115         <UsageCount Value="134"/>
     115        <UsageCount Value="136"/>
    116116      </Unit6>
    117117      <Unit7>
     
    131131        <TopLine Value="4"/>
    132132        <CursorPos X="25" Y="17"/>
    133         <UsageCount Value="134"/>
     133        <UsageCount Value="136"/>
    134134      </Unit8>
    135135      <Unit9>
     
    142142        <TopLine Value="3"/>
    143143        <CursorPos X="37" Y="16"/>
    144         <UsageCount Value="134"/>
     144        <UsageCount Value="136"/>
    145145      </Unit9>
    146146      <Unit10>
     
    153153        <TopLine Value="5"/>
    154154        <CursorPos X="37" Y="18"/>
    155         <UsageCount Value="134"/>
     155        <UsageCount Value="136"/>
    156156      </Unit10>
    157157      <Unit11>
     
    164164        <TopLine Value="4"/>
    165165        <CursorPos X="26" Y="17"/>
    166         <UsageCount Value="134"/>
     166        <UsageCount Value="136"/>
    167167      </Unit11>
    168168      <Unit12>
     
    175175        <TopLine Value="5"/>
    176176        <CursorPos X="37" Y="18"/>
    177         <UsageCount Value="134"/>
     177        <UsageCount Value="136"/>
    178178      </Unit12>
    179179      <Unit13>
     
    186186        <TopLine Value="4"/>
    187187        <CursorPos X="37" Y="17"/>
    188         <UsageCount Value="134"/>
     188        <UsageCount Value="136"/>
    189189      </Unit13>
    190190      <Unit14>
     
    197197        <TopLine Value="6"/>
    198198        <CursorPos X="75" Y="7"/>
    199         <UsageCount Value="132"/>
     199        <UsageCount Value="134"/>
    200200      </Unit14>
    201201      <Unit15>
     
    206206        <TopLine Value="1"/>
    207207        <CursorPos X="14" Y="13"/>
    208         <UsageCount Value="66"/>
     208        <UsageCount Value="68"/>
    209209        <Loaded Value="True"/>
    210210      </Unit15>
     
    219219      <Unit17>
    220220        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\FPC\rtl\objpas\classes\classesh.inc"/>
    221         <EditorIndex Value="9"/>
    222221        <WindowIndex Value="0"/>
    223222        <TopLine Value="1524"/>
    224223        <CursorPos X="5" Y="1537"/>
    225         <UsageCount Value="36"/>
    226         <Loaded Value="True"/>
     224        <UsageCount Value="37"/>
    227225      </Unit17>
    228226      <Unit18>
     
    282280        <TopLine Value="835"/>
    283281        <CursorPos X="3" Y="837"/>
    284         <UsageCount Value="0"/>
     282        <UsageCount Value="10"/>
    285283      </Unit24>
    286284      <Unit25>
     
    315313      <Unit29>
    316314        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\wincontrol.inc"/>
    317         <WindowIndex Value="0"/>
    318         <TopLine Value="5393"/>
    319         <CursorPos X="35" Y="5402"/>
     315        <EditorIndex Value="9"/>
     316        <WindowIndex Value="0"/>
     317        <TopLine Value="6253"/>
     318        <CursorPos X="1" Y="6270"/>
    320319        <UsageCount Value="29"/>
     320        <Loaded Value="True"/>
    321321      </Unit29>
    322322      <Unit30>
     
    333333        <ResourceBaseClass Value="Form"/>
    334334        <UnitName Value="UCDCustomize"/>
    335         <IsVisibleTab Value="True"/>
    336335        <EditorIndex Value="5"/>
    337336        <WindowIndex Value="0"/>
    338         <TopLine Value="1"/>
    339         <CursorPos X="61" Y="9"/>
    340         <UsageCount Value="50"/>
    341         <Loaded Value="True"/>
     337        <TopLine Value="22"/>
     338        <CursorPos X="36" Y="36"/>
     339        <UsageCount Value="52"/>
     340        <Loaded Value="True"/>
     341        <LoadedDesigner Value="True"/>
    342342      </Unit31>
    343343      <Unit32>
     
    356356        <TopLine Value="255"/>
    357357        <CursorPos X="27" Y="268"/>
    358         <UsageCount Value="51"/>
     358        <UsageCount Value="53"/>
    359359        <Loaded Value="True"/>
    360360      </Unit33>
     
    430430        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
    431431        <UnitName Value="UCDManagerTabs"/>
    432         <EditorIndex Value="11"/>
    433         <WindowIndex Value="0"/>
    434         <TopLine Value="6"/>
    435         <CursorPos X="3" Y="19"/>
    436         <UsageCount Value="39"/>
     432        <EditorIndex Value="8"/>
     433        <WindowIndex Value="0"/>
     434        <TopLine Value="31"/>
     435        <CursorPos X="15" Y="44"/>
     436        <UsageCount Value="41"/>
    437437        <Loaded Value="True"/>
    438438      </Unit43>
     
    463463        <Filename Value="..\..\Managers\UCDManagerRegions.pas"/>
    464464        <UnitName Value="UCDManagerRegions"/>
    465         <EditorIndex Value="7"/>
    466         <WindowIndex Value="0"/>
    467         <TopLine Value="259"/>
    468         <CursorPos X="12" Y="272"/>
    469         <UsageCount Value="38"/>
     465        <IsVisibleTab Value="True"/>
     466        <EditorIndex Value="6"/>
     467        <WindowIndex Value="0"/>
     468        <TopLine Value="96"/>
     469        <CursorPos X="44" Y="112"/>
     470        <UsageCount Value="40"/>
    470471        <Loaded Value="True"/>
    471472      </Unit47>
     
    477478        <TopLine Value="190"/>
    478479        <CursorPos X="3" Y="202"/>
    479         <UsageCount Value="29"/>
     480        <UsageCount Value="31"/>
    480481        <Loaded Value="True"/>
    481482      </Unit48>
     
    526527        <TopLine Value="23"/>
    527528        <CursorPos X="15" Y="24"/>
    528         <UsageCount Value="35"/>
     529        <UsageCount Value="37"/>
    529530      </Unit54>
    530531      <Unit55>
    531532        <Filename Value="..\..\Managers\UCDManagerRegionsPopup.pas"/>
    532533        <UnitName Value="UCDManagerRegionsPopup"/>
    533         <EditorIndex Value="6"/>
    534534        <WindowIndex Value="0"/>
    535535        <TopLine Value="14"/>
    536536        <CursorPos X="25" Y="27"/>
    537537        <UsageCount Value="13"/>
    538         <Loaded Value="True"/>
    539538      </Unit55>
    540539      <Unit56>
     
    549548        <Filename Value="..\..\UCDManager.pas"/>
    550549        <UnitName Value="UCDManager"/>
    551         <EditorIndex Value="8"/>
    552         <WindowIndex Value="0"/>
    553         <TopLine Value="567"/>
    554         <CursorPos X="14" Y="586"/>
    555         <UsageCount Value="14"/>
     550        <EditorIndex Value="7"/>
     551        <WindowIndex Value="0"/>
     552        <TopLine Value="49"/>
     553        <CursorPos X="23" Y="64"/>
     554        <UsageCount Value="16"/>
    556555        <Loaded Value="True"/>
    557556      </Unit57>
     
    563562        <TopLine Value="1"/>
    564563        <CursorPos X="31" Y="8"/>
    565         <UsageCount Value="13"/>
     564        <UsageCount Value="15"/>
    566565        <Loaded Value="True"/>
    567566      </Unit58>
     
    569568        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\extctrls.pp"/>
    570569        <UnitName Value="ExtCtrls"/>
    571         <WindowIndex Value="0"/>
    572         <TopLine Value="1129"/>
    573         <CursorPos X="3" Y="1142"/>
    574         <UsageCount Value="9"/>
     570        <EditorIndex Value="10"/>
     571        <WindowIndex Value="0"/>
     572        <TopLine Value="122"/>
     573        <CursorPos X="14" Y="225"/>
     574        <UsageCount Value="10"/>
     575        <Loaded Value="True"/>
    575576      </Unit59>
    576577      <Unit60>
     
    581582        <TopLine Value="2"/>
    582583        <CursorPos X="38" Y="8"/>
    583         <UsageCount Value="11"/>
     584        <UsageCount Value="13"/>
    584585        <Loaded Value="True"/>
    585586      </Unit60>
     
    595596        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\comctrls.pp"/>
    596597        <UnitName Value="ComCtrls"/>
    597         <WindowIndex Value="0"/>
    598         <TopLine Value="296"/>
    599         <CursorPos X="14" Y="309"/>
     598        <EditorIndex Value="11"/>
     599        <WindowIndex Value="0"/>
     600        <TopLine Value="286"/>
     601        <CursorPos X="43" Y="299"/>
    600602        <UsageCount Value="11"/>
     603        <Loaded Value="True"/>
    601604      </Unit62>
    602605      <Unit63>
     
    617620        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\lcltype.pp"/>
    618621        <UnitName Value="LCLType"/>
    619         <EditorIndex Value="10"/>
    620622        <WindowIndex Value="0"/>
    621623        <TopLine Value="114"/>
    622624        <CursorPos X="3" Y="127"/>
    623         <UsageCount Value="11"/>
    624         <Loaded Value="True"/>
     625        <UsageCount Value="12"/>
    625626      </Unit65>
     627      <Unit66>
     628        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\menu.inc"/>
     629        <WindowIndex Value="0"/>
     630        <TopLine Value="115"/>
     631        <CursorPos X="1" Y="128"/>
     632        <UsageCount Value="10"/>
     633      </Unit66>
    626634    </Units>
    627635    <JumpHistory Count="30" HistoryIndex="29">
    628636      <Position1>
    629         <Filename Value="..\..\Managers\UCDManagerTabsPopup.pas"/>
    630         <Caret Line="11" Column="5" TopLine="1"/>
     637        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     638        <Caret Line="183" Column="1" TopLine="170"/>
    631639      </Position1>
    632640      <Position2>
    633         <Filename Value="..\..\UCDManager.pas"/>
    634         <Caret Line="34" Column="3" TopLine="27"/>
     641        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     642        <Caret Line="220" Column="1" TopLine="207"/>
    635643      </Position2>
    636644      <Position3>
    637         <Filename Value="..\..\UCDManager.pas"/>
    638         <Caret Line="129" Column="5" TopLine="116"/>
     645        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     646        <Caret Line="184" Column="1" TopLine="171"/>
    639647      </Position3>
    640648      <Position4>
    641         <Filename Value="..\..\UCDManager.pas"/>
    642         <Caret Line="46" Column="15" TopLine="33"/>
     649        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     650        <Caret Line="185" Column="1" TopLine="171"/>
    643651      </Position4>
    644652      <Position5>
    645         <Filename Value="..\..\UCDManager.pas"/>
    646         <Caret Line="139" Column="9" TopLine="116"/>
     653        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     654        <Caret Line="186" Column="1" TopLine="201"/>
    647655      </Position5>
    648656      <Position6>
    649         <Filename Value="..\..\UCDManager.pas"/>
    650         <Caret Line="144" Column="5" TopLine="131"/>
     657        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     658        <Caret Line="216" Column="1" TopLine="201"/>
    651659      </Position6>
    652660      <Position7>
    653         <Filename Value="..\..\UCDManager.pas"/>
    654         <Caret Line="147" Column="5" TopLine="134"/>
     661        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     662        <Caret Line="217" Column="1" TopLine="201"/>
    655663      </Position7>
    656664      <Position8>
    657         <Filename Value="..\..\UCDManager.pas"/>
    658         <Caret Line="149" Column="5" TopLine="135"/>
     665        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\wincontrol.inc"/>
     666        <Caret Line="6270" Column="1" TopLine="6253"/>
    659667      </Position8>
    660668      <Position9>
    661         <Filename Value="..\..\UCDManager.pas"/>
    662         <Caret Line="153" Column="33" TopLine="140"/>
     669        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\wincontrol.inc"/>
     670        <Caret Line="6267" Column="1" TopLine="6253"/>
    663671      </Position9>
    664672      <Position10>
    665         <Filename Value="..\..\UCDManager.pas"/>
    666         <Caret Line="155" Column="18" TopLine="142"/>
     673        <Filename Value="E:\Projekty2\FreePascalManager\trunk\Instance\1\Lazarus\lcl\include\wincontrol.inc"/>
     674        <Caret Line="6270" Column="1" TopLine="6253"/>
    667675      </Position10>
    668676      <Position11>
    669         <Filename Value="..\..\UCDManager.pas"/>
    670         <Caret Line="13" Column="20" TopLine="1"/>
     677        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     678        <Caret Line="409" Column="1" TopLine="384"/>
    671679      </Position11>
    672680      <Position12>
    673         <Filename Value="..\..\UCDManager.pas"/>
    674         <Caret Line="157" Column="10" TopLine="149"/>
     681        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     682        <Caret Line="250" Column="1" TopLine="237"/>
    675683      </Position12>
    676684      <Position13>
    677         <Filename Value="..\..\UCDManager.pas"/>
    678         <Caret Line="162" Column="16" TopLine="149"/>
     685        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     686        <Caret Line="253" Column="1" TopLine="237"/>
    679687      </Position13>
    680688      <Position14>
    681         <Filename Value="..\..\UCDManager.pas"/>
    682         <Caret Line="175" Column="9" TopLine="158"/>
     689        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     690        <Caret Line="259" Column="1" TopLine="238"/>
    683691      </Position14>
    684692      <Position15>
    685         <Filename Value="..\..\UCDManager.pas"/>
    686         <Caret Line="183" Column="5" TopLine="170"/>
     693        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     694        <Caret Line="260" Column="1" TopLine="239"/>
    687695      </Position15>
    688696      <Position16>
    689         <Filename Value="..\..\UCDManager.pas"/>
    690         <Caret Line="187" Column="7" TopLine="174"/>
     697        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     698        <Caret Line="262" Column="1" TopLine="241"/>
    691699      </Position16>
    692700      <Position17>
    693         <Filename Value="..\..\UCDManager.pas"/>
    694         <Caret Line="188" Column="7" TopLine="174"/>
     701        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     702        <Caret Line="263" Column="1" TopLine="248"/>
    695703      </Position17>
    696704      <Position18>
    697         <Filename Value="..\..\UCDManager.pas"/>
    698         <Caret Line="216" Column="17" TopLine="203"/>
     705        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     706        <Caret Line="265" Column="1" TopLine="248"/>
    699707      </Position18>
    700708      <Position19>
    701         <Filename Value="..\..\UCDManager.pas"/>
    702         <Caret Line="217" Column="21" TopLine="204"/>
     709        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     710        <Caret Line="266" Column="1" TopLine="248"/>
    703711      </Position19>
    704712      <Position20>
    705         <Filename Value="..\..\UCDManager.pas"/>
    706         <Caret Line="232" Column="8" TopLine="208"/>
     713        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     714        <Caret Line="268" Column="1" TopLine="248"/>
    707715      </Position20>
    708716      <Position21>
    709         <Filename Value="..\..\UCDManager.pas"/>
    710         <Caret Line="317" Column="31" TopLine="304"/>
     717        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     718        <Caret Line="272" Column="1" TopLine="254"/>
    711719      </Position21>
    712720      <Position22>
    713         <Filename Value="..\..\UCDManager.pas"/>
    714         <Caret Line="339" Column="61" TopLine="326"/>
     721        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     722        <Caret Line="273" Column="1" TopLine="254"/>
    715723      </Position22>
    716724      <Position23>
    717         <Filename Value="..\..\UCDManager.pas"/>
    718         <Caret Line="391" Column="3" TopLine="388"/>
     725        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     726        <Caret Line="274" Column="1" TopLine="254"/>
    719727      </Position23>
    720728      <Position24>
    721         <Filename Value="..\..\UCDPopupMenu.pas"/>
    722         <Caret Line="8" Column="55" TopLine="1"/>
     729        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     730        <Caret Line="275" Column="1" TopLine="254"/>
    723731      </Position24>
    724732      <Position25>
    725         <Filename Value="..\..\UCDPopupMenu.pas"/>
    726         <Caret Line="171" Column="22" TopLine="158"/>
     733        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     734        <Caret Line="276" Column="1" TopLine="255"/>
    727735      </Position25>
    728736      <Position26>
    729         <Filename Value="..\..\UCDPopupMenu.pas"/>
    730         <Caret Line="190" Column="25" TopLine="177"/>
     737        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     738        <Caret Line="277" Column="1" TopLine="256"/>
    731739      </Position26>
    732740      <Position27>
    733         <Filename Value="..\..\UCDPopupMenu.pas"/>
    734         <Caret Line="192" Column="18" TopLine="179"/>
     741        <Filename Value="..\..\Managers\UCDManagerTabs.pas"/>
     742        <Caret Line="278" Column="1" TopLine="257"/>
    735743      </Position27>
    736744      <Position28>
    737         <Filename Value="..\..\UCDMaster.pas"/>
    738         <Caret Line="8" Column="31" TopLine="1"/>
     745        <Filename Value="..\..\Managers\UCDManagerRegions.pas"/>
     746        <Caret Line="167" Column="24" TopLine="156"/>
    739747      </Position28>
    740748      <Position29>
    741         <Filename Value="..\..\UCDCustomize.pas"/>
    742         <Caret Line="15" Column="36" TopLine="2"/>
     749        <Filename Value="..\..\Managers\UCDManagerRegions.pas"/>
     750        <Caret Line="160" Column="24" TopLine="147"/>
    743751      </Position29>
    744752      <Position30>
    745         <Filename Value="..\..\UCDCustomize.pas"/>
    746         <Caret Line="66" Column="23" TopLine="53"/>
     753        <Filename Value="..\..\Managers\UCDManagerRegions.pas"/>
     754        <Caret Line="112" Column="14" TopLine="101"/>
    747755      </Position30>
    748756    </JumpHistory>
     
    770778  </CompilerOptions>
    771779  <Debugging>
    772     <BreakPoints Count="1">
     780    <BreakPoints Count="2">
    773781      <Item1>
    774         <Source Value="..\..\UCDManager.pas"/>
    775         <Line Value="454"/>
     782        <Source Value="..\..\Managers\UCDManagerRegions.pas"/>
     783        <Line Value="163"/>
    776784      </Item1>
     785      <Item2>
     786        <Source Value="..\..\Managers\UCDManagerTabs.pas"/>
     787        <Line Value="216"/>
     788      </Item2>
    777789    </BreakPoints>
    778790    <Watches Count="1">
  • Docking/CoolDocking/Managers/UCDManagerRegions.pas

    r194 r195  
    1515
    1616  TCDManagerRegionsItem = class(TCDManagerItem)
    17     Panel: TPanel;
     17    PanelHeader: TCDPanelHeader;
    1818    Splitter: TSplitter;
    19     ClientAreaPanel: TPanel;
    2019    constructor Create;
     20    destructor Destroy; override;
    2121  end;
    2222
     
    3131    //Panels: TObjectList; // TObjectList<TCDStyleRegionsPanel>
    3232    function FindControlInPanels(Control: TControl): TCDManagerItem; override;
     33    procedure InsertControlNoUpdate(Control: TControl; InsertAt: TAlign);
    3334    procedure InsertControlPanel(Control: TControl; InsertAt: TAlign;
    3435      DropCtl: TControl); override;
     
    5455constructor TCDManagerRegionsItem.Create;
    5556begin
    56   Panel := TPanel.Create(nil);
    57 
    58   ClientAreaPanel := TPanel.Create(Panel);
    59   with ClientAreaPanel do begin
    60     Parent := Panel;
    61     Visible := True;
    62     DockSite := True;
    63     UseDockManager := True;
    64     Align := alClient;
    65     BevelInner := bvNone;
    66     BevelOuter := bvNone;
    67     //Color := clGreen;
    68   end;
    69   Splitter := TSplitter.Create(Panel);
     57  PanelHeader := TCDPanelHeader.Create(nil);
     58  PanelHeader.Header.ManagerItem := Self;
     59
     60  Splitter := TSplitter.Create(nil);
    7061  with Splitter do begin
    71     Parent := Panel;
     62    //Parent := Panel;
    7263    //Color := clRed;
    7364  end;
     65end;
     66
     67destructor TCDManagerRegionsItem.Destroy;
     68begin
     69  inherited Destroy;
    7470end;
    7571
     
    10096end;
    10197
     98procedure TCDManagerRegions.InsertControlNoUpdate(Control: TControl;
     99  InsertAt: TAlign);
     100var
     101  NewItem: TCDManagerRegionsItem;
     102begin
     103  NewItem := TCDManagerRegionsItem.Create;
     104  with NewItem do begin
     105    PanelHeader.Parent := Self.DockSite;
     106    Manager := Self;
     107    if DockStyle = dsList then Visible := True;
     108    PanelHeader.Header.PopupMenu := Self.PopupMenu;
     109  end;
     110  if (Control is TForm) and Assigned((Control as TForm).Icon) then
     111    NewItem.PanelHeader.Header.Icon.Picture.Assign((Control as TForm).Icon);
     112    NewItem.PanelHeader.Parent := DockSite;
     113
     114    NewItem.Control := Control;
     115    Control.AddHandlerOnVisibleChanged(NewItem.VisibleChange);
     116    Control.Parent := NewItem.PanelHeader.ControlPanel;
     117    Control.Align := alClient;
     118    if (InsertAt = alTop) or (InsertAt = alLeft) then
     119      DockItems.Insert(0, NewItem)
     120      else DockItems.Add(NewItem);
     121  end;
     122
    102123procedure TCDManagerRegions.InsertControlPanel(Control: TControl; InsertAt: TAlign;
    103124  DropCtl: TControl);
    104125var
    105   NewPanel: TCDManagerRegionsItem;
     126  NewItem: TCDManagerRegionsItem;
    106127  I: Integer;
    107128  NewDirection: TCDDirection;
     
    131152      end;
    132153    end;
    133 
    134     NewPanel := TCDManagerRegionsItem.Create;
    135     with NewPanel do begin
    136       Panel.Parent := Self.DockSite;
    137       Manager := Self;
    138       if DockStyle = dsList then Visible := True;
    139       Header.PopupMenu := Self.PopupMenu;
    140       //PopupMenu.Parent := Self.DockSite;
    141     end;
    142     if (Control is TForm) and Assigned((Control as TForm).Icon) then
    143       NewPanel.Header.Icon.Picture.Assign((Control as TForm).Icon);
    144 
    145     NewPanel.Control := Control;
    146     Control.AddHandlerOnVisibleChanged(NewPanel.VisibleChange);
    147     Control.Parent := NewPanel.ClientAreaPanel;
    148     Control.Align := alClient;
    149     if (InsertAt = alTop) or (InsertAt = alLeft) then
    150       DockItems.Insert(0, NewPanel)
    151       else DockItems.Add(NewPanel);
     154    InsertControlNoUpdate(Control, InsertAt);
    152155  end;
    153156  UpdateClientSize;
     
    156159procedure TCDManagerRegions.RemoveControl(Control: TControl);
    157160var
    158   ClientPanel: TCDManagerItem;
     161  ManagerItem: TCDManagerItem;
    159162  ClientCount: Integer;
    160163begin
    161   ClientPanel := FindControlInPanels(Control);
    162   Control.RemoveHandlerOnVisibleChanged(ClientPanel.VisibleChange);
    163 
    164   DockItems.Remove(ClientPanel);
     164  ManagerItem := FindControlInPanels(Control);
     165  if Assigned(ManagerItem) then
     166    Control.RemoveHandlerOnVisibleChanged(ManagerItem.VisibleChange);
     167
     168  DockItems.Remove(ManagerItem);
    165169  ClientCount := DockItems.Count;
    166170
     
    184188var
    185189  I: Integer;
     190  NewItem: TCDManagerRegionsItem;
    186191begin
    187192  inherited;
     
    189194  FDockItems := TObjectList.Create;
    190195
    191   for I := 0 to DockItems.Count - 1 do begin
    192     if Assigned(TCDManagerRegionsItem(DockItems[I]).Splitter) then
    193     with TCDManagerRegionsItem(DockItems[I]) do begin
    194       Splitter.Visible := True;
    195       Panel.Visible := True;
    196       ClientAreaPanel.Parent := TCDManagerRegionsItem(DockItems[I]).Panel;
    197       ClientAreaPanel.Visible := True;
    198       Control.Visible := True;
    199     end;
    200   end;
     196  for I := 0 to ADockSite.DockClientCount - 1 do
     197    InsertControlNoUpdate(ADockSite.DockClients[I], alLeft);
     198  UpdateClientSize;
    201199end;
    202200
     
    214212  for I := 0 to FDockItems.Count - 1 do
    215213    with TCDManagerRegionsItem(FDockItems[I]) do begin
    216       Panel.Invalidate;
     214      PanelHeader.Invalidate;
    217215    end;
    218216end;
     
    233231  for I := 0 to DockItems.Count - 1 do
    234232  with TCDManagerRegionsItem(DockItems[I]) do begin
    235     Panel.Left := SplitterLeft;
    236     Panel.Top := SplitterTop;
    237     Panel.Height := Self.DockSite.Height div
     233    PanelHeader.Left := SplitterLeft;
     234    PanelHeader.Top := SplitterTop;
     235    PanelHeader.Height := Self.DockSite.Height div
    238236      Self.DockSite.DockClientCount;
    239     Panel.Width := Self.DockSite.Width div
     237    PanelHeader.Width := Self.DockSite.Width div
    240238      Self.DockSite.DockClientCount;
    241239    //TCDClientPanel(FDockPanels[I]).DockPanelPaint(Self);
    242     if I < (DockItems.Count - 1) then Panel.Align := BaseAlign
    243       else Panel.Align := alClient;
    244 
    245     Inc(SplitterLeft, Panel.Width);
    246     Inc(SplitterTop, Panel.Height);
     240    if I < (DockItems.Count - 1) then PanelHeader.Align := BaseAlign
     241      else PanelHeader.Align := alClient;
     242
     243    Inc(SplitterLeft, PanelHeader.Width);
     244    Inc(SplitterTop, PanelHeader.Height);
    247245    Splitter.Left := SplitterLeft;
    248246    Splitter.Top := SplitterTop;
     
    255253    Paint(Self);
    256254    if I < (DockItems.Count - 1) then begin
    257       if DockDirection = ddHorizontal then Panel.Align := alLeft
    258         else Panel.Align := alTop;
    259     end else Panel.Align := alClient;
     255      if DockDirection = ddHorizontal then PanelHeader.Align := alLeft
     256        else PanelHeader.Align := alTop;
     257    end else PanelHeader.Align := alClient;
    260258  end;
    261259end;
  • Docking/CoolDocking/Managers/UCDManagerTabs.pas

    r194 r195  
    1111
    1212type
    13   TCDManagerTabsITem = class(TCDManagerItem)
    14 
     13
     14  { TCDManagerTabsItem }
     15
     16  TCDManagerTabsItem = class(TCDManagerItem)
     17    Icon: TImage;
     18    constructor Create;
     19    destructor Destroy; override;
    1520  end;
    1621
     
    3742    FTabsPos: THeaderPos;
    3843    function FindControlInPanels(Control: TControl): TCDManagerItem; override;
    39     procedure InsertControlNoUpdate(AControl: TControl; InsertAt: TAlign);
     44    procedure InsertControlNoUpdate(Control: TControl; InsertAt: TAlign);
    4045    procedure RemoveControl(Control: TControl); override;
    4146  public
     
    5762  UCDClient;
    5863
     64{ TCDManagerTabsItem }
     65
     66constructor TCDManagerTabsItem.Create;
     67begin
     68  Icon := TImage.Create(nil);
     69end;
     70
     71destructor TCDManagerTabsItem.Destroy;
     72begin
     73  Icon.Free;
     74  inherited Destroy;
     75end;
     76
    5977{ TCDManagerTabs }
    6078
     
    91109  I: Integer;
    92110begin
    93   // Hide all clients
     111  UpdateClientSize;
     112{  // Hide all clients
    94113  for I := 0 to DockItems.Count - 1 do
    95114    if TCDManagerItem(DockItems[I]).Control.Visible
     
    137156  //TCDClientPanel(FDockPanels[TabControl.TabIndex]).Visible := True;
    138157  end;
    139   MouseDownSkip := True;
     158  MouseDownSkip := True;        }
    140159end;
    141160
     
    175194    Parent := ADockSite;
    176195    Name := Self.DockSite.Name + 'TabControl';
    177     Visible := False;
    178     Align := alTop;
     196    Visible := True;
     197    //Align := alTop;
    179198    //Height := 24;
    180199    Align := alClient;
     
    193212  //MoveDuration := 1000; // ms
    194213
    195   PageControl.Visible := True;
     214  //PageControl.Visible := True;
    196215  //TabImageList.Clear;
    197   for I := 0 to DockItems.Count - 1 do
    198     Self.InsertControlNoUpdate(TCDManagerItem(DockItems[I]).Control, alNone);
     216  for I := 0 to ADockSite.DockClientCount - 1 do
     217    InsertControlNoUpdate(ADockSite.DockClients[I], alNone);
    199218  TabControlChange(Self);
     219  //TCDManagerTabs(Self).TabControlChange(Self);
    200220end;
    201221
     
    221241end;
    222242
    223 procedure TCDManagerTabs.InsertControlNoUpdate(AControl: TControl; InsertAt: TAlign);
     243procedure TCDManagerTabs.InsertControlNoUpdate(Control: TControl; InsertAt: TAlign);
    224244var
    225245  NewTabSheet: TTabSheet;
    226   NewPanel: TCDManagerTabsItem;
     246  NewItem: TCDManagerTabsItem;
    227247begin
    228248  inherited;
    229249  begin
    230     NewPanel := TCDManagerTabsItem.Create;
    231     with NewPanel do begin
     250    NewItem := TCDManagerTabsItem.Create;
     251    with NewItem do begin
    232252      //Panel.Parent := Self.DockSite;
    233253      Manager := Self;
    234       if DockStyle = dsList then Visible := True;
     254      //if DockStyle = dsList then Visible := True;
    235255      //Align := alClient;
    236       Header.PopupMenu := Self.PopupMenu;
     256      //Header.PopupMenu := Self.PopupMenu;
    237257      //PopupMenu.Parent := Self.DockSite;
    238258    end;
    239     if (AControl is TForm) and Assigned((AControl as TForm).Icon) then
    240       NewPanel.Header.Icon.Picture.Assign((AControl as TForm).Icon);
    241 
    242     NewPanel.Control := AControl;
    243     AControl.AddHandlerOnVisibleChanged(NewPanel.VisibleChange);
    244     //AControl.Parent := NewPanel.ClientAreaPanel;
    245     AControl.Align := alClient;
     259    if (Control is TForm) and Assigned((Control as TForm).Icon) then
     260      NewItem.Icon.Picture.Assign((Control as TForm).Icon);
     261
     262    NewItem.Control := Control;
     263    Control.AddHandlerOnVisibleChanged(NewItem.VisibleChange);
     264    //AControl.Parent := NewItem.ClientAreaPanel;
     265    Control.Align := alClient;
    246266    if (InsertAt = alTop) or (InsertAt = alLeft) then
    247       DockItems.Insert(0, NewPanel)
    248       else DockItems.Add(NewPanel);
    249 
    250   end;
    251 
    252   if AControl.Visible then begin
     267      DockItems.Insert(0, NewItem)
     268      else DockItems.Add(NewItem);
     269
     270  end;
     271
    253272    NewTabSheet := TTabSheet.Create(PageControl);
    254273    NewTabSheet.PageControl := PageControl;
    255     NewTabSheet.Caption := AControl.Caption;
     274    NewTabSheet.Caption := Control.Caption;
    256275    NewTabSheet.ImageIndex := TabImageList.Count;
    257     TabImageList.Add(NewPanel.Header.Icon.Picture.Bitmap, nil);
    258 //    if Assigned(NewPanel.Splitter) then
    259 //      NewPanel.Splitter.Visible := False;
    260 //    NewPanel.ClientAreaPanel.Visible := False;
    261 //    NewPanel.Visible := False;
    262     //NewPanel.Parent := NewTabSheet;
    263   end;
     276    NewTabSheet.TabVisible := Control.Visible;
     277    Control.Parent := NewTabSheet;
     278    TabImageList.Add(NewItem.Icon.Picture.Bitmap, nil);
     279//    if Assigned(NewItem.Splitter) then
     280//      NewItem.Splitter.Visible := False;
     281//    NewItem.ClientAreaPanel.Visible := False;
     282//    NewItem.Visible := False;
     283    //NewItem.Parent := NewTabSheet;
    264284end;
    265285
     
    282302var
    283303  I: Integer;
     304  NewTabSheet: TTabSheet;
    284305begin
    285306  inherited UpdateClientSize;
    286   for I := 0 to DockItems.Count - 1 do begin
     307  for I := 0 to DockItems.Count - 1 do
     308  with TCDManagerTabsItem(DockItems[I]) do begin
     309    Control.Parent := PageControl.Pages[I];
     310    Control.Align := alClient;
     311
    287312    //TCDClientPanel(DockPanels[I]).ClientAreaPanel.Width := DockSite.Width;
    288313    //TCDClientPanel(DockPanels[I]).ClientAreaPanel.Height := DockSite.Height - PageControl.Height;
  • Docking/CoolDocking/UCDManager.pas

    r194 r195  
    3333  end;
    3434
    35   { TCDManagerItem }
    36 
    37   TCDManagerItem = class
     35  { TCDPanelHeader }
     36
     37  TCDPanelHeader = class(TPanel)
    3838  private
    3939    FHeaderPos: THeaderPos;
    4040    FShowHeader: Boolean;
     41    procedure SetHeaderPos(const AValue: THeaderPos);
     42  public
     43    Header: TCDHeader;
     44    ControlPanel: TPanel;
     45    property ShowHeader: Boolean read FShowHeader write FShowHeader;
     46    property HeaderPos: THeaderPos read FHeaderPos write SetHeaderPos;
     47    constructor Create(TheOwner: TComponent);
     48    destructor Destroy; override;
     49  end;
     50
     51  { TCDManagerItem }
     52
     53  TCDManagerItem = class
     54  private
    4155    procedure DockPanelMouseDown(Sender: TObject; Button: TMouseButton;
    4256      Shift: TShiftState; X, Y: Integer);
    4357    procedure ResizeExecute(Sender: TObject);
    44     procedure SetHeaderPos(const AValue: THeaderPos);
    4558  public
    46     Header: TCDHeader;
    4759    Control: TControl;
    4860    Manager: TCDManager;
     
    5163    constructor Create;
    5264    destructor Destroy; override;
    53     property ShowHeader: Boolean read FShowHeader write FShowHeader;
    54     property HeaderPos: THeaderPos read FHeaderPos write SetHeaderPos;
    5565  end;
    5666
     
    116126  UCDManagerRegions, UCDManagerTabs, UCDManagerRegionsPopup, UCDManagerTabsPopup;
    117127
    118 { TCDManagerItem }
    119 
    120 procedure TCDManagerItem.SetHeaderPos(const AValue: THeaderPos);
     128{ TCDPanelHeader }
     129
     130procedure TCDPanelHeader.SetHeaderPos(const AValue: THeaderPos);
    121131begin
    122132  if FHeaderPos=AValue then exit;
    123133  FHeaderPos:=AValue;
    124   Paint(Self);
    125 end;
     134  //Paint(Self);
     135end;
     136
     137constructor TCDPanelHeader.Create(TheOwner: TComponent);
     138begin
     139  inherited;
     140  //Paint.OnPaint := Paint;
     141//  Header.Shape.OnMouseDown := DockPanelMouseDown;
     142//  Header.Title.OnMouseDown := DockPanelMouseDown;
     143  HeaderPos := hpTop;
     144
     145  ShowHeader := True;
     146  ControlPanel := TPanel.Create(Self);
     147  with ControlPanel do begin
     148    Parent := Self;
     149    Visible := True;
     150    DockSite := True;
     151    UseDockManager := True;
     152    Align := alClient;
     153    BevelInner := bvNone;
     154    BevelOuter := bvNone;
     155    //Color := clGreen;
     156  end;
     157  Header := TCDHeader.Create(Self);
     158  with Header do begin
     159    Parent := Self;
     160    Visible := ShowHeader;
     161    Align := alTop;
     162    Height := GrabberSize;
     163    //ManagerItem := Self;
     164  end;
     165  //OnResize := ResizeExecute;
     166  BevelInner := bvNone;
     167  BevelOuter := bvNone;
     168end;
     169
     170destructor TCDPanelHeader.Destroy;
     171begin
     172  inherited Destroy;
     173end;
     174
     175{ TCDManagerItem }
    126176
    127177procedure TCDManagerItem.Paint(Sender: TObject);
     
    145195constructor TCDManagerItem.Create;
    146196begin
    147   //Paint.OnPaint := Paint;
    148   Header.Shape.OnMouseDown := DockPanelMouseDown;
    149   Header.Title.OnMouseDown := DockPanelMouseDown;
    150   //OnResize := ResizeExecute;
    151   //BevelInner := bvNone;
    152   //BevelOuter := bvNone;
    153   HeaderPos := hpTop;
    154 
    155   ShowHeader := True;
    156   Header := TCDHeader.Create(nil);
    157   with Header do begin
    158     Parent := nil;
    159     Visible := ShowHeader;
    160     Align := alTop;
    161     Height := GrabberSize;
    162     ManagerItem := Self;
    163   end;
    164197end;
    165198
     
    457490    if AValue = dsTabs then begin
    458491      NewManager := TCDManagerTabs.Create(FDockSite);
    459       //TCDManagerTabs(Self).TabControlChange(Self);
    460492    end else
    461493    if AValue = dsList then begin
Note: See TracChangeset for help on using the changeset viewer.