|
|
Home » U++ Library support » U++ Widgets - General questions or Mixed problems » DockCtrl (A dockable window widget for U++)
Re: DockCtrl (A dockable window widget for U++) [message #13567 is a reply to message #11482] |
Tue, 15 January 2008 02:03   |
Oblivion
Messages: 1206 Registered: August 2007
|
Senior Contributor |
|
|
At last, here we are again 
I know It's been a long while since I last updated the DockCtrl. I was toooo busy. DockCtrl is under heavy development in the background. But I feel obliged to post something just to show that the project is not stopped. Since I am now free to focus on this project, I will update it regularly (weekly) again.
I've just uploaded a "preview" of ver 0.50 (this will be the last version with all the dottes, and numbers. I am going to syncronise it with the Upp versioning system).
From now on, dockctrl will have a sophisticated tabbing mechanism. Thanx to Unodgs for "QuickTabs" . I modified it and used it in dockctrl (From now on, it is also a generic TabCtrl interface called TabInterface -- which can be used and customised in any project. So, maybe I will upload this new "widget" seperately after I polish it. The results are good, I think.
- This preview has the tabs only under tabdocks. The final version of 0.50 will have tabs on left/right sides too (its in progress).
- Also, some sort of "recursive tabbing" is introduced. What I mean is, tabbed docks can be tabbed as groups under other tabdocks (It looks like "cascaded" tabs) and this can be done by drag-n-drop with mouse (they can also be dragged as groups). I think this can save a lot of space in Photoshop-like big application. 
Since it uses a modification of QuickTabs, it has the "scroll" ability too. You can scroll tabs (with scroll bar or with middle mouse button), when they are not visible, as it is in theIDE.
Try and see it...
- Every tab can have icons (one for custom icon, and one for close icon) and has a a traditional dockctrl command menu which can be invoked by right clicking on tab. And, "left dragging" will tear the tab.
Please keep in mind that this is only a "preview" version. I know there are hell lot of bugs and somethings are broken (e.g. ResetLayout() and autosizing() are broken needs reworking)
Also, the source code is very messy, and scattered at the moment, and will go under heavy restructuring.So I decided not to commit to SVN repository until I clean the mess. 
Bug reports, suggestions, constructive criticisms are always welcome.
- No complete X11 support yet.
- No AutoHide.
Ps: as always is, you can find the example preview exe is in the first post of this topic.
Regards.
Github page: https://github.com/ismail-yilmaz
upp-components: https://github.com/ismail-yilmaz/upp-components
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
[Updated on: Tue, 15 January 2008 02:10] Report message to a moderator
|
|
|
Re: DockCtrl (A dockable window widget for U++) [message #13573 is a reply to message #13567] |
Tue, 15 January 2008 08:59   |
|
Quote: | Since it uses a modification of QuickTabs, it has the "scroll" ability too. You can scroll tabs (with scroll bar or with middle mouse button), when they are not visible, as it is in theIDE.
Try and see it..
|
I started to work on quicktabs some time ago. They would support every paint direction (so you could paint tabs of hidden panels) and autohide of srcollbar. I'll integrate it (with your support of course) with your code.
I'll try to finish it very soon. I was (still am actually..) very busy with my comercial project and that's why I was unable to do it earlier.
Thanks for new release.
[Updated on: Tue, 15 January 2008 09:00] Report message to a moderator
|
|
|
|
|
|
Re: DockCtrl (A dockable window widget for U++) [message #14169 is a reply to message #11482] |
Sun, 17 February 2008 05:00   |
Oblivion
Messages: 1206 Registered: August 2007
|
Senior Contributor |
|
|
Hi, finally I have updated the DockCtrl to ver 0.50. Now DockCtrl has all the basic functionality for Win32 platform.
Also, from now on, I syncronize the releases with monthly U++ releases, so it is actually DEV802b.1. Namely, it is in Beta stage So, I am officially supporting the ctrl now and in the future.
This is a major update. You can find the details of the update and the example win32 exe in the first post of this topic. Also, I finally updated the SVN and added the self-explanatory source code of the example exe.
From this version on, DockCtrl has full AutoHide and Tabbing support. The "nested tabbing" is made optional and can be switched on, on-the-fly. Also, tabs has "automatic alignment" feature. by default tabs are bottom-aligned. But this can be changed on-the-fly by the user. In automatic alignment mode, Every tabwindow has it's tabs on the opposite side of it's alignment (e.g, LEFT/right, TOP/bottom and vice versa)
Chameleon (skins) method was broken, now fixed. Also, DockCtrl now has a unified chameleon structure for easy customizing (not complete yet).
I am planning to add internationalization support and (actually, it does have support; all I have to do is to add a *.t file -- I'm a bit lazy nowadays ) write documentation, add X11 support.
============================================================ ===
The Easter EGG:
One of the most interesting "feature" of DockCtrl is that now it is Ctrl dependent, therefore it can be "nested". This means, theoretically, you could have infinite number of independent dockctrl framework (yes, not only dockable windows, but also the framework itself in a single application window! Namely, even DockCtrl could be "nested" too! For example, you could even have child DockCtrl frameworks in Dock widgets(!) or other standard U++ or CtrlFrame derived classed! I will write an example code to demonstrate this "feature" (All you have to do is to pass the target Ctrl reference to SetLayout() method. Thats all.
============================================================ ===
As always is, there should be some bugs (I didn't encounter any yet). I need feedback, so please feel free to report bugs you encounter while playing with the exe. I'm also going rename some classes and methods (I know they are not well named).
Also, code needs refactoring.
Regards.
Github page: https://github.com/ismail-yilmaz
upp-components: https://github.com/ismail-yilmaz/upp-components
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
[Updated on: Sun, 17 February 2008 15:08] Report message to a moderator
|
|
|
|
|
|
|
|
|
|
|
|
Re: DockCtrl (A dockable window widget for U++) [message #14235 is a reply to message #14233] |
Wed, 20 February 2008 19:00   |
|
Oblivion wrote on Wed, 20 February 2008 10:25 |
I've applied the patches and added the German translations to the source. By the way, Daniel could you please update the changelog when you fix or add stg. It's easy to track the changes/fixes there. 
|
Naturaly, no problem. I love writing changelogs myself too 
Quote: |
Also, if you have spare time (It won't take more than 10 minutes) could you please add Polish translation to the source (AFAIK you're Polish)? I Would be grateful.
|
Sure.
|
|
|
|
|
Re: DockCtrl (A dockable window widget for U++) [message #14263 is a reply to message #14260] |
Thu, 21 February 2008 10:35   |
Oblivion
Messages: 1206 Registered: August 2007
|
Senior Contributor |
|
|
Quote: |
There's one small issue, I don't know if you noticed yet. Mark a panel as autohide and move your mouse over the border tab so that the panel appears with animation. All goo up to here. But if you quickly move the whole window, the poped-up panel remains in place until it disappears.
|
No I didn't noticed that. Thank you. I will fix it asap.
Quote: |
This is getting better and better. A couple of more such minor improvements and I"ll give it a try in some production code, to see how it behaves in the long run.
|
Well, as a matter of fact, I 'm currentyl using DockCtrtl in TheIDE. And apart from some small bugs in normal mode (no nested tabbing - it still needs to be refined), it seems to work fine. But again, DockCtrl is still under heavy development. It seems that the famous "chicken-egg" problem is a traditional situation of the U++ apps
Github page: https://github.com/ismail-yilmaz
upp-components: https://github.com/ismail-yilmaz/upp-components
Bobcat the terminal emulator: https://github.com/ismail-yilmaz/Bobcat
[Updated on: Thu, 21 February 2008 10:39] Report message to a moderator
|
|
|
|
Goto Forum:
Current Time: Mon May 12 10:41:05 CEST 2025
Total time taken to generate the page: 0.01302 seconds
|
|
|