Page 1 of 2

Going nuts with DockingPanes

Posted: Tue Feb 02, 2010 5:12 am
by Tom
As you can see in the attached picture series, I use docking panes on the main screen of my app. The pane parent is a transparent static placed on oDlg:DrawingArea. There are two other elements on this area, the clock on the left bottom and the picture on the upper right. If the docking panes float in (they will automatically minimize if the mouse moves outside the pane), everything looks good. If the panes are sticked/fixed, the two elements (clock, logo) shine through. The small toolbox on the right side (two icons) is also placed on the drawingarea, and it should be always in the foreground (:ToFront()) - this is correct. I played around for hours and hours with :ToBack and :ToFront, multiple layers of statics as parents for the panes - always the same. If the panes are fixed, the elements places on the drawingarea, but behind the panes, shine through. This is too much code to show it here. Is this a bug? What can I do to prevent the bitmaps to shine through?

Re: Going nuts with DockingPanes

Posted: Tue Feb 02, 2010 7:22 am
by rdonnay
Tom -

You have been very busy.
It appears that you are using the docking panes as post-it notes.
This is obviously some kind of incompatability between Xbase++ and Code Jock.
I don't know where to go with this, other than try to replace the statics with some other kind of object.
The static in the upper right corner may possibly be replaced by another Code Jock object.

I would need to work with a small sample program.

Is it possible for you to help write one for me?
I have a busy week of work before Chris Andries (from Belgium) arrives on Saturday.

Roger

Re: Going nuts with DockingPanes

Posted: Tue Feb 02, 2010 8:25 am
by Tom
Hi, Roger.
The static in the upper right corner may possibly be replaced by another Code Jock object.
This may be a good idea. :!: I'm going to try this.
I would need to work with a small sample program.
Is it possible for you to help write one for me?
If the above still gives no results, I will try to create a sample. I'm already working with an inofficial hotfix of Xbase++, since the docking panes did not show with 355. Maybe, there's still something left to do for Alaska.

Re: Going nuts with DockingPanes

Posted: Tue Feb 02, 2010 8:33 am
by rdonnay
I'm already working with an inofficial hotfix of Xbase++, since the docking panes did not show with 355. Maybe, there's still something left to do for Alaska.
I am thinking the same thing.

Steffen led me to believe (at our meeting in Phoenix in October) that CodeJock compatability is important to him. If we cannot resolve this ourselves, I suggest we pass the problem to Till Warweg.

Re: Going nuts with DockingPanes

Posted: Tue Feb 02, 2010 8:56 am
by Tom
Here is a sample derived from your "DockingPanes.PRG". It shows a bitmap which is placed on the same static as the docking panes itselfs, since nothing would be shown otherwise. If you run the sample, the bitmap flickers to the background because of the :ToBack()-call in the EVAL clause of DCREAD. If the panes are minimized, the bitmap shows up, if the panes float in, the bitmap stays in the background. If the panes are fixed, the bitmap moves to the foreground.

Re: Going nuts with DockingPanes

Posted: Wed Feb 17, 2010 12:08 pm
by rdonnay
I noticed that whenever the panes are floating, they cover the bitmap.
The bleed-thru is only on docked panes.

Trying to find a solution.

I have been working a lot with XCodeJock during the past 2 weeks and have made a lot of progress with Commandbars. Some of what I learned can probably be applied to DockingPanes. My goal for this week is to improve the CJ_DockingPanes class with the kind of improvements I made to CJ_CommandBars.

Here's flash file of a quick demo I made:

ftp://donnay-software.com
user: subscriber
pwd: < same as always >
file: tabbedtoolbar1.swf

Re: Going nuts with DockingPanes

Posted: Wed Feb 17, 2010 12:36 pm
by Tom
Hi, Roger.
The bleed-thru is only on docked panes.
Yes!
Trying to find a solution.
:dance:

Re: Going nuts with DockingPanes

Posted: Wed Feb 17, 2010 10:09 pm
by rdonnay
Tom -

Here is a short video of my latest DockingPane sample program:

http://www.tomliehr.de/roger/dockingpane1.html

Attached are the latest files in a zip.

Copy *.ch to \exp19\include
Copy x*.prg to \exp19\source\xcodejock
Copy dockingpane.* to \exp19\xcodejock\samples\dockingpane

Rebuild XCODEJOCK.DLL by running build19_sl1 in the \exp19\source\xcodejock directory.

Roger

Re: Going nuts with DockingPanes

Posted: Fri Jun 04, 2010 8:42 am
by skiman
Tom,

In the screen shots you placed in the first post of this thread, you have buttons on top of your application. Are these CJPushButton's?

If so, are they working without problems? I want to switch from dcpushbuttonxp to cjPushbuttons. I want to be sure that it won't give me some problems.

Re: Going nuts with DockingPanes

Posted: Mon Jun 07, 2010 9:02 am
by Tom
Hi, Chris.

Indeed, these are CJPUSHBUTTONS. They work good, but the captions are bitmaps (CJLoadBitmap) with a background color set with DC_BitmapTransparentColor. There is only one cosmetic thing: All other items on this dialog react properly on changes effecting their WHEN-/HIDE-clauses, but sometimes a user has to click (even twice) on the dialog window if a CJPUSHBUTTON's status (especially effecting WHEN) changed. This may have something to do with the event thread.