Changeset 63 for Docking


Ignore:
Timestamp:
Sep 29, 2010, 10:27:07 AM (14 years ago)
Author:
george
Message:
  • Opraveno: Při přepínání záložek se mohlo aktivovat nesprávně kotvení okna.
  • Opraveno: Nastaven minimální počet pixelů pro posun před započetím kotvení.
Location:
Docking/CoolDocking
Files:
3 edited

Legend:

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

    r62 r63  
    4040        <IsPartOfProject Value="True"/>
    4141        <UnitName Value="Demo"/>
    42         <EditorIndex Value="0"/>
    4342        <WindowIndex Value="0"/>
    4443        <TopLine Value="1"/>
    4544        <CursorPos X="6" Y="10"/>
    4645        <UsageCount Value="126"/>
    47         <Loaded Value="True"/>
    4846        <DefaultSyntaxHighlighter Value="Delphi"/>
    4947      </Unit0>
     
    5452        <ResourceBaseClass Value="Form"/>
    5553        <UnitName Value="UMainForm"/>
    56         <IsVisibleTab Value="True"/>
    57         <EditorIndex Value="4"/>
    5854        <WindowIndex Value="0"/>
    5955        <TopLine Value="58"/>
    60         <CursorPos X="3" Y="71"/>
     56        <CursorPos X="3" Y="72"/>
    6157        <UsageCount Value="126"/>
    62         <Loaded Value="True"/>
    63         <LoadedDesigner Value="True"/>
    6458        <DefaultSyntaxHighlighter Value="Delphi"/>
    6559      </Unit1>
     
    6761        <Filename Value="E:\Programy\Lazarus\lcl\controls.pp"/>
    6862        <UnitName Value="Controls"/>
    69         <EditorIndex Value="21"/>
    70         <WindowIndex Value="0"/>
    71         <TopLine Value="1667"/>
    72         <CursorPos X="14" Y="1680"/>
     63        <WindowIndex Value="0"/>
     64        <TopLine Value="1296"/>
     65        <CursorPos X="15" Y="1309"/>
    7366        <UsageCount Value="62"/>
    74         <Loaded Value="True"/>
    7567      </Unit2>
    7668      <Unit3>
     
    8577      <Unit4>
    8678        <Filename Value="E:\Programy\Lazarus\lcl\include\control.inc"/>
    87         <EditorIndex Value="22"/>
    8879        <WindowIndex Value="0"/>
    8980        <TopLine Value="71"/>
    90         <CursorPos X="21" Y="83"/>
     81        <CursorPos X="1" Y="83"/>
    9182        <UsageCount Value="55"/>
    92         <Loaded Value="True"/>
    9383      </Unit4>
    9484      <Unit5>
    9585        <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    96         <EditorIndex Value="23"/>
    9786        <WindowIndex Value="0"/>
    9887        <TopLine Value="5229"/>
    9988        <CursorPos X="33" Y="5245"/>
    10089        <UsageCount Value="61"/>
    101         <Loaded Value="True"/>
    10290      </Unit5>
    10391      <Unit6>
     
    134122        <Filename Value="E:\Programy\Lazarus\lcl\lclproc.pas"/>
    135123        <UnitName Value="LCLProc"/>
    136         <EditorIndex Value="5"/>
    137124        <WindowIndex Value="0"/>
    138125        <TopLine Value="1495"/>
    139126        <CursorPos X="1" Y="1516"/>
    140127        <UsageCount Value="26"/>
    141         <Loaded Value="True"/>
    142128      </Unit10>
    143129      <Unit11>
     
    177163        <ResourceBaseClass Value="Form"/>
    178164        <UnitName Value="UDockForm"/>
    179         <EditorIndex Value="18"/>
    180165        <WindowIndex Value="0"/>
    181166        <TopLine Value="7"/>
    182167        <CursorPos X="33" Y="21"/>
    183168        <UsageCount Value="125"/>
    184         <Loaded Value="True"/>
    185         <LoadedDesigner Value="True"/>
    186169        <DefaultSyntaxHighlighter Value="Delphi"/>
    187170      </Unit15>
     
    189172        <Filename Value="E:\Programy\Lazarus\lcl\graphics.pp"/>
    190173        <UnitName Value="Graphics"/>
    191         <EditorIndex Value="12"/>
    192         <WindowIndex Value="0"/>
    193         <TopLine Value="1083"/>
     174        <WindowIndex Value="0"/>
     175        <TopLine Value="1089"/>
    194176        <CursorPos X="15" Y="1096"/>
    195177        <UsageCount Value="12"/>
    196         <Loaded Value="True"/>
    197178      </Unit16>
    198179      <Unit17>
     
    233214        <Filename Value="E:\Programy\Lazarus\lcl\extctrls.pp"/>
    234215        <UnitName Value="ExtCtrls"/>
    235         <EditorIndex Value="7"/>
    236216        <WindowIndex Value="0"/>
    237217        <TopLine Value="1250"/>
    238218        <CursorPos X="19" Y="1263"/>
    239219        <UsageCount Value="28"/>
    240         <Loaded Value="True"/>
    241220      </Unit21>
    242221      <Unit22>
     
    250229      <Unit23>
    251230        <Filename Value="E:\Programy\Lazarus\lcl\include\dragmanager.inc"/>
    252         <EditorIndex Value="2"/>
    253         <WindowIndex Value="0"/>
    254         <TopLine Value="553"/>
    255         <CursorPos X="1" Y="566"/>
     231        <WindowIndex Value="0"/>
     232        <TopLine Value="52"/>
     233        <CursorPos X="30" Y="65"/>
    256234        <UsageCount Value="11"/>
    257         <Loaded Value="True"/>
    258235      </Unit23>
    259236      <Unit24>
    260237        <Filename Value="E:\Programy\Lazarus\lcl\include\customform.inc"/>
    261         <EditorIndex Value="20"/>
    262238        <WindowIndex Value="0"/>
    263239        <TopLine Value="1452"/>
    264240        <CursorPos X="5" Y="1467"/>
    265241        <UsageCount Value="11"/>
    266         <Loaded Value="True"/>
    267242      </Unit24>
    268243      <Unit25>
     
    277252        <Filename Value="E:\Programy\Lazarus\lcl\comctrls.pp"/>
    278253        <UnitName Value="ComCtrls"/>
    279         <EditorIndex Value="6"/>
    280254        <WindowIndex Value="0"/>
    281255        <TopLine Value="398"/>
    282256        <CursorPos X="59" Y="408"/>
    283257        <UsageCount Value="12"/>
    284         <Loaded Value="True"/>
    285258      </Unit26>
    286259      <Unit27>
    287260        <Filename Value="E:\Programy\Lazarus\lcl\forms.pp"/>
    288261        <UnitName Value="Forms"/>
    289         <EditorIndex Value="19"/>
    290262        <WindowIndex Value="0"/>
    291263        <TopLine Value="529"/>
    292264        <CursorPos X="21" Y="541"/>
    293265        <UsageCount Value="35"/>
    294         <Loaded Value="True"/>
    295266      </Unit27>
    296267      <Unit28>
    297268        <Filename Value="E:\Programy\Lazarus\lcl\themes.pas"/>
    298269        <UnitName Value="Themes"/>
    299         <EditorIndex Value="17"/>
    300         <WindowIndex Value="0"/>
    301         <TopLine Value="2167"/>
     270        <EditorIndex Value="0"/>
     271        <WindowIndex Value="0"/>
     272        <TopLine Value="2148"/>
    302273        <CursorPos X="21" Y="2148"/>
    303274        <UsageCount Value="30"/>
     
    340311        <Filename Value="..\UCoolDocking.pas"/>
    341312        <UnitName Value="UCoolDocking"/>
     313        <IsVisibleTab Value="True"/>
    342314        <EditorIndex Value="1"/>
    343315        <WindowIndex Value="0"/>
    344         <TopLine Value="899"/>
    345         <CursorPos X="20" Y="912"/>
     316        <TopLine Value="1044"/>
     317        <CursorPos X="49" Y="1054"/>
    346318        <UsageCount Value="53"/>
    347319        <Loaded Value="True"/>
     
    352324        <WindowIndex Value="0"/>
    353325        <TopLine Value="1"/>
    354         <CursorPos X="29" Y="16"/>
     326        <CursorPos X="18" Y="11"/>
    355327        <UsageCount Value="25"/>
    356328        <DefaultSyntaxHighlighter Value="None"/>
     
    390362        <ResourceBaseClass Value="Form"/>
    391363        <UnitName Value="UCoolDockCustomize"/>
    392         <EditorIndex Value="24"/>
    393364        <WindowIndex Value="0"/>
    394365        <TopLine Value="9"/>
    395366        <CursorPos X="19" Y="17"/>
    396367        <UsageCount Value="52"/>
    397         <Loaded Value="True"/>
    398         <LoadedDesigner Value="True"/>
    399368        <DefaultSyntaxHighlighter Value="Delphi"/>
    400369      </Unit39>
     
    447416      <Unit45>
    448417        <Filename Value="E:\Programy\Lazarus\lcl\include\tabcontrol.inc"/>
    449         <EditorIndex Value="10"/>
    450418        <WindowIndex Value="0"/>
    451419        <TopLine Value="182"/>
    452420        <CursorPos X="3" Y="184"/>
    453421        <UsageCount Value="12"/>
    454         <Loaded Value="True"/>
    455422      </Unit45>
    456423      <Unit46>
    457424        <Filename Value="E:\Programy\Lazarus\lcl\include\pagecontrol.inc"/>
    458         <EditorIndex Value="9"/>
    459425        <WindowIndex Value="0"/>
    460426        <TopLine Value="98"/>
    461427        <CursorPos X="3" Y="103"/>
    462428        <UsageCount Value="12"/>
    463         <Loaded Value="True"/>
    464429      </Unit46>
    465430      <Unit47>
    466431        <Filename Value="E:\Programy\Lazarus\lcl\include\customnotebook.inc"/>
    467         <EditorIndex Value="8"/>
    468432        <WindowIndex Value="0"/>
    469433        <TopLine Value="885"/>
    470434        <CursorPos X="3" Y="853"/>
    471435        <UsageCount Value="12"/>
    472         <Loaded Value="True"/>
    473436      </Unit47>
    474437      <Unit48>
    475438        <Filename Value="E:\Programy\Lazarus\lcl\include\canvas.inc"/>
    476         <EditorIndex Value="13"/>
    477439        <WindowIndex Value="0"/>
    478440        <TopLine Value="1555"/>
    479441        <CursorPos X="1" Y="1568"/>
    480442        <UsageCount Value="12"/>
    481         <Loaded Value="True"/>
    482443      </Unit48>
    483444      <Unit49>
    484445        <Filename Value="E:\Programy\Lazarus\lcl\include\lclintfh.inc"/>
    485         <EditorIndex Value="15"/>
    486         <WindowIndex Value="0"/>
    487         <TopLine Value="27"/>
     446        <WindowIndex Value="0"/>
     447        <TopLine Value="33"/>
    488448        <CursorPos X="10" Y="40"/>
    489449        <UsageCount Value="12"/>
    490         <Loaded Value="True"/>
    491450      </Unit49>
    492451      <Unit50>
    493452        <Filename Value="E:\Programy\Lazarus\lcl\include\intfbaselcl.inc"/>
    494         <EditorIndex Value="16"/>
    495453        <WindowIndex Value="0"/>
    496454        <TopLine Value="29"/>
    497455        <CursorPos X="3" Y="32"/>
    498456        <UsageCount Value="12"/>
    499         <Loaded Value="True"/>
    500457      </Unit50>
    501458      <Unit51>
    502459        <Filename Value="E:\Programy\Lazarus\lcl\include\winapih.inc"/>
    503         <EditorIndex Value="11"/>
    504         <WindowIndex Value="0"/>
    505         <TopLine Value="306"/>
     460        <WindowIndex Value="0"/>
     461        <TopLine Value="312"/>
    506462        <CursorPos X="10" Y="319"/>
    507463        <UsageCount Value="12"/>
    508         <Loaded Value="True"/>
    509464      </Unit51>
    510465      <Unit52>
    511466        <Filename Value="E:\Programy\Lazarus\lcl\include\controlcanvas.inc"/>
    512         <EditorIndex Value="14"/>
    513         <WindowIndex Value="0"/>
    514         <TopLine Value="79"/>
     467        <WindowIndex Value="0"/>
     468        <TopLine Value="85"/>
    515469        <CursorPos X="1" Y="92"/>
    516470        <UsageCount Value="11"/>
    517         <Loaded Value="True"/>
    518471      </Unit52>
    519472      <Unit53>
    520473        <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\objpas\sysutils\datih.inc"/>
    521         <EditorIndex Value="3"/>
    522474        <WindowIndex Value="0"/>
    523475        <TopLine Value="126"/>
    524476        <CursorPos X="89" Y="147"/>
    525477        <UsageCount Value="11"/>
    526         <Loaded Value="True"/>
    527478      </Unit53>
    528479    </Units>
    529     <JumpHistory Count="30" HistoryIndex="27">
     480    <JumpHistory Count="13" HistoryIndex="12">
    530481      <Position1>
    531         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    532         <Caret Line="23" Column="67" TopLine="20"/>
     482        <Filename Value="..\UCoolDocking.pas"/>
     483        <Caret Line="1032" Column="39" TopLine="1017"/>
    533484      </Position1>
    534485      <Position2>
    535         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    536         <Caret Line="5238" Column="13" TopLine="5225"/>
     486        <Filename Value="..\UCoolDocking.pas"/>
     487        <Caret Line="1020" Column="1" TopLine="1015"/>
    537488      </Position2>
    538489      <Position3>
    539         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    540         <Caret Line="5242" Column="35" TopLine="5225"/>
     490        <Filename Value="..\UCoolDocking.pas"/>
     491        <Caret Line="1020" Column="14" TopLine="1015"/>
    541492      </Position3>
    542493      <Position4>
    543         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    544         <Caret Line="5" Column="64" TopLine="1"/>
     494        <Filename Value="..\UCoolDocking.pas"/>
     495        <Caret Line="1020" Column="49" TopLine="1007"/>
    545496      </Position4>
    546497      <Position5>
    547         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    548         <Caret Line="5238" Column="13" TopLine="5225"/>
     498        <Filename Value="..\UCoolDocking.pas"/>
     499        <Caret Line="1022" Column="1" TopLine="1013"/>
    549500      </Position5>
    550501      <Position6>
    551         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    552         <Caret Line="6" Column="55" TopLine="1"/>
     502        <Filename Value="..\UCoolDocking.pas"/>
     503        <Caret Line="1020" Column="45" TopLine="1007"/>
    553504      </Position6>
    554505      <Position7>
    555         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    556         <Caret Line="5228" Column="33" TopLine="5215"/>
     506        <Filename Value="..\UCoolDocking.pas"/>
     507        <Caret Line="13" Column="11" TopLine="1"/>
    557508      </Position7>
    558509      <Position8>
    559         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    560         <Caret Line="5233" Column="31" TopLine="5215"/>
     510        <Filename Value="..\UCoolDocking.pas"/>
     511        <Caret Line="1021" Column="68" TopLine="1008"/>
    561512      </Position8>
    562513      <Position9>
    563         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    564         <Caret Line="5238" Column="13" TopLine="5215"/>
     514        <Filename Value="..\UCoolDocking.pas"/>
     515        <Caret Line="1027" Column="1" TopLine="1008"/>
    565516      </Position9>
    566517      <Position10>
    567         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    568         <Caret Line="5242" Column="35" TopLine="5229"/>
     518        <Filename Value="..\UCoolDocking.pas"/>
     519        <Caret Line="1024" Column="9" TopLine="1008"/>
    569520      </Position10>
    570521      <Position11>
    571         <Filename Value="E:\Programy\Lazarus\lcl\include\wincontrol.inc"/>
    572         <Caret Line="5245" Column="33" TopLine="5229"/>
     522        <Filename Value="..\UCoolDocking.pas"/>
     523        <Caret Line="904" Column="77" TopLine="899"/>
    573524      </Position11>
    574525      <Position12>
    575526        <Filename Value="..\UCoolDocking.pas"/>
    576         <Caret Line="1032" Column="39" TopLine="1017"/>
     527        <Caret Line="1064" Column="38" TopLine="1045"/>
    577528      </Position12>
    578529      <Position13>
    579         <Filename Value="UMainForm.pas"/>
    580         <Caret Line="62" Column="68" TopLine="60"/>
     530        <Filename Value="..\UCoolDocking.pas"/>
     531        <Caret Line="1054" Column="1" TopLine="1044"/>
    581532      </Position13>
    582       <Position14>
    583         <Filename Value="UMainForm.pas"/>
    584         <Caret Line="95" Column="3" TopLine="92"/>
    585       </Position14>
    586       <Position15>
    587         <Filename Value="..\UCoolDocking.pas"/>
    588         <Caret Line="1020" Column="1" TopLine="1015"/>
    589       </Position15>
    590       <Position16>
    591         <Filename Value="..\UCoolDocking.pas"/>
    592         <Caret Line="1020" Column="14" TopLine="1015"/>
    593       </Position16>
    594       <Position17>
    595         <Filename Value="UMainForm.pas"/>
    596         <Caret Line="92" Column="1" TopLine="87"/>
    597       </Position17>
    598       <Position18>
    599         <Filename Value="UMainForm.pas"/>
    600         <Caret Line="34" Column="1" TopLine="21"/>
    601       </Position18>
    602       <Position19>
    603         <Filename Value="UMainForm.pas"/>
    604         <Caret Line="91" Column="1" TopLine="78"/>
    605       </Position19>
    606       <Position20>
    607         <Filename Value="..\UCoolDocking.pas"/>
    608         <Caret Line="1020" Column="49" TopLine="1007"/>
    609       </Position20>
    610       <Position21>
    611         <Filename Value="..\UCoolDocking.pas"/>
    612         <Caret Line="1022" Column="1" TopLine="1013"/>
    613       </Position21>
    614       <Position22>
    615         <Filename Value="..\UCoolDocking.pas"/>
    616         <Caret Line="1020" Column="45" TopLine="1007"/>
    617       </Position22>
    618       <Position23>
    619         <Filename Value="..\UCoolDocking.pas"/>
    620         <Caret Line="13" Column="11" TopLine="1"/>
    621       </Position23>
    622       <Position24>
    623         <Filename Value="..\UCoolDocking.pas"/>
    624         <Caret Line="1021" Column="68" TopLine="1008"/>
    625       </Position24>
    626       <Position25>
    627         <Filename Value="..\UCoolDocking.pas"/>
    628         <Caret Line="1027" Column="1" TopLine="1008"/>
    629       </Position25>
    630       <Position26>
    631         <Filename Value="..\UCoolDocking.pas"/>
    632         <Caret Line="1024" Column="9" TopLine="1008"/>
    633       </Position26>
    634       <Position27>
    635         <Filename Value="E:\Programy\Lazarus\fpc\2.4.0\source\rtl\objpas\sysutils\datih.inc"/>
    636         <Caret Line="147" Column="89" TopLine="126"/>
    637       </Position27>
    638       <Position28>
    639         <Filename Value="..\UCoolDocking.pas"/>
    640         <Caret Line="904" Column="77" TopLine="899"/>
    641       </Position28>
    642       <Position29>
    643         <Filename Value="..\UCoolDocking.pas"/>
    644         <Caret Line="1027" Column="14" TopLine="1018"/>
    645       </Position29>
    646       <Position30>
    647         <Filename Value="..\UCoolDocking.pas"/>
    648         <Caret Line="70" Column="5" TopLine="57"/>
    649       </Position30>
    650533    </JumpHistory>
    651534  </ProjectOptions>
  • Docking/CoolDocking/ReadMe.txt

    r56 r63  
    66* Popup control menu
    77* Conjoin floating form
     8* Icons on tabs and grabbers
    89
    910Planned features:
     
    1415* Predefined customization form
    1516* User defined form header styles
    16 * Icons on tabs and grabbers
     17* Ability to lock and unlock docked controls for accidently undocking
  • Docking/CoolDocking/UCoolDocking.pas

    r62 r63  
    8686    MouseDown: Boolean;
    8787    MouseButton: TMouseButton;
     88    MouseDownSkip: Boolean;
    8889    FMaster: TCoolDockMaster;
    8990    FMoveDuration: Integer;
     
    466467    TTabControlNoteBookStrings(Tabs).NoteBook.OnMouseDown := TabControlMouseDown;
    467468    TTabControlNoteBookStrings(Tabs).NoteBook.OnMouseUp := TabControlMouseUp;
     469    OnMouseUp := TabControlMouseUp;
    468470    Images := TabImageList;
    469471  end;
     
    837839//  TCoolDockClientPanel(FDockPanels[TabControl.TabIndex]).Visible := True;
    838840  end;
     841  MouseDownSkip := True;
    839842end;
    840843
     
    915918
    916919procedure TCoolDockManager.TabControlMouseDown(Sender: TObject; Button: TMouseButton;
    917       Shift: TShiftState; X, Y: Integer);
    918 begin
    919   MouseDown := True;
    920   MouseButton := Button;
     920  Shift: TShiftState; X, Y: Integer);
     921begin
     922  if not MouseDownSkip then begin
     923    MouseDown := True;
     924    MouseButton := Button;
     925  end;
     926  MouseDownSkip := False;
    921927end;
    922928
     
    10461052    //(Control as TWinControl).DockSite := False;
    10471053    ClientAreaPanel.DockSite := False;
    1048     (Control as TWinControl).BeginDrag(True);
     1054    (Control as TWinControl).BeginDrag(False, 10);
    10491055    //DragManager.DragStart(Control, False, 1);
    10501056  end;
Note: See TracChangeset for help on using the changeset viewer.