|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Sat Apr 22, 2006 5:40 pm
Yet another delay...sigh (docking) |
I've run into another snag in CMUD that I need to fix.
I've been using a lot of components from Developer Express. These are the same components that I used in zApp last year. As I started trying to force their docking system to work the way I wanted for CMUD, I have discovered that it simply doesn't have the flexibility that CMUD needs. In fact, it's really not much better than the docking I already had in zMUD. From my work in zApp, I knew that their docking system was going to be a pain, but I didn't realize until today some of the severe limitations that it had.
For example, if you undocked the main MUD window, then docked another child window to the top of the new window, then this window suddenly becomes something called a "Vertical container". The effect of this is that now you can only dock stuff vertically (or tabbed) but not to the left or right. This severly limits the types of layouts that can be created. I don't think *anyone* would be happy with these kind of limits.
The good news is that I've found another docking system from AutomattedQA (the people who make the wonderful AQTime profiler that I've used for a while). It looks like it has the hooks needed for the Theming engine in CMUD and it has a LOT more flexibility in it's docking arrangements. Plus, the visual cues that it gives when dragging and docking are very nice and will really help novice users understand exactly where their docked window will end up.
I need to take a couple of days to fully evaluate this docking system and see if I can use it in CMUD instead of the Developer Express system.
I feel that the docking system in CMUD is a *very* important feature for the first beta. From the comments I have read on this forum, it seems that the poor docking in zMUD was more of an issue than I realized, and many of the cool things I want to do with CMUD really depend upon a solid docking system.
I'll post more here when I have had a chance to try the AQdock system a bit more, and maybe I'll even post some screen shots. But I think that spending the time to get the docking working right is as important as working on low-level stuff like the new compiler. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Sun Apr 23, 2006 12:13 am |
Well, I've done some more evaluation of their demo version and it all looks good, so I went ahead and bought this AQdock component package. I'll need to wait until I get their source code to integrate it with the Theme engine in CMUD, but already I have the trial version working.
One bit of good news: in one of the other threads, someone requested being able to hide the caption from a docked window. Well, this docking component has that feature and it looks like it's easy to implement. It also still has the "fly-out" windows, and they actually have a few more features that I can control. Most importantly, it definitely allows the full set of layouts that people have been asking for. It's easy to float two windows and dock them together in a floating tab-window, and then drag that floating tab-window and dock it somewhere else in the layout if you want. You can have any sort of combination of docking that you want.
I've noticed that sometimes the docking indicator doesn't show all of the options. For example, if you have a main MUD window and a child "tell" window docked to the top and then create a 3rd window and want to dock it to the side of *both* the windows (so that it spans the entire height), you have to move the cursor over to the right edge of the screen and then move it over the splitter bar between the windows. It then shows the proper "outline" of where the window will go. But it doesn't display any quick-hotspot for doing this...you have to know about the splitter bar.
On contrast, it displays nice hot spots for most of the places you want to dock. Let's see if I can get a good screen shot:
See the hot-spot "arrows"...drag and drop onto those to dock the window. The shaded blue rectangle shows where the window will go when you release the mouse. As you move the window over some of the other docked windows, other hotspots appear.
But a hotspot doesn't appear at the rightmost and leftmost edge even though you can still dock there. |
|
|
|
Seb Wizard
Joined: 14 Aug 2004 Posts: 1269
|
Posted: Sun Apr 23, 2006 1:51 am |
Looks rather nice!
|
|
|
|
Tech GURU
Joined: 18 Oct 2000 Posts: 2733 Location: Atlanta, USA
|
Posted: Sun Apr 23, 2006 2:33 am |
Zugg that's awesome.. it looks like CMUD will be great and I'm sure alot of MU*ers out there will be very happy. (We may even get egads to convince the rest of his 3K group to switch. ) I can hardly wait to get my hands on it.
My biggest challenge now is coming up with cool things to do. |
|
_________________ Asati di tempari! |
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4692 Location: Pensacola, FL, USA
|
Posted: Sun Apr 23, 2006 3:16 am |
But can you get two free floating child windows docked together, and still be able to have them always on top?
|
|
_________________ Discord: Shalimarwildcat |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Sun Apr 23, 2006 3:27 am |
Yes. In fact, the docking system is set up to prevent any floating "dockable" windows from going behind the main application window. Without seeing the source code, I don't know how hard this will be to change, but for now the dockable windows will always be on top of the main application window. And somehow they seem to have found ways around the bugs in the Windows code handling Z-order. I haven't been able to screw up the floating windows yet.
So yeah, it will be a refreshing change. |
|
|
|
slicertool Magician
Joined: 09 Oct 2003 Posts: 459 Location: USA
|
Posted: Sun Apr 23, 2006 4:11 am |
Zugg? Impressed with the quality of someone else's code? Wow, this _is_ going to be good
|
|
|
|
Aarlot Adept
Joined: 30 Dec 2003 Posts: 226
|
Posted: Sun Apr 23, 2006 8:35 am |
On a somewhat related note... will Cmud layouts work with dual monitors? I have two monitors set up on my computer and I'd like to have a map, and perhaps another window or two if I can get it working, on the second monitor, but the layout file will not save it for me. It opens the map when the mud loads, but only on my main monitor; I have to move it over every time. Not a huge deal, but it would be nice.
|
|
_________________ Everyone is entitled to their beliefs - until they die. Then only the truth matters. |
|
|
|
Zugg MASTER
Joined: 25 Sep 2000 Posts: 23379 Location: Colorado, USA
|
Posted: Sun Apr 23, 2006 5:46 pm |
Yes. I have dual monitors myself so it will definitely support that. The problems with zMUD and dual monitors were related to Delphi 5 problems. CMUD uses Delphi 7 and isn't subject to these issues.
|
|
|
|
egads Beginner
Joined: 10 Mar 2005 Posts: 15
|
Posted: Tue Apr 25, 2006 1:32 am |
Whee, my whines (helped) create further cmud delays.
If you want to set my house on fire, unfortunately you'll have to drop by Australia.
On a side note, that screenshot...
I'm going to need a cigarette. |
|
|
|
|
|