Page 1 of 2

DC Designer

Posted: Sun Feb 14, 2010 12:25 pm
by Steve
This is a great tool to design and move objects on the screen

You just need to add this line before you build the dialog

// Install global handler.
DC_ReadGuiHandler({|a,b,c,d,e,f|DC_DesignHandler(a,b,c,d,e,f)})

and this in the DCGETOPTIONS ;
SOURCEFILE "c:\xbprog\rbawin\prog\new_support.prg" ;

When you run the program and hit the ALT=F1 key, instructions appear on how to move and resize objects, when the designer is closed it updates the source code.

It saved me a lot of time designing a busy dialog.

Steve Poore
RBA

Re: DC Designer

Posted: Tue Feb 16, 2010 5:08 am
by hz_scotty
hi

the feature "DC_DesignHandler" is from version?

Re: DC Designer

Posted: Tue Feb 16, 2010 8:18 am
by rdonnay
This is a feature that has been in eXpress++ for several years, but I think I made the last improvements in build 249. I resisted writing this because I did not want to support it or document it, but a customer (Bobby Drakos) pushed me real hard to write this for him. He uses it regularly and demonstrated how valuable it is to him at the eXpress++ Devcon in 2008.

I put together a quick demo into a flash file.

Click on the below URL. It will play the demo recording.

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

Re: DC Designer

Posted: Wed Feb 17, 2010 6:11 am
by pierredaou
The designer is a great tool, indeed but what tool do you use first to create the basic form ?
The form designer included with Alaska seems awkward to convert into Dc????? standards.

Regards

Re: DC Designer

Posted: Wed Feb 17, 2010 9:14 am
by rdonnay
I will not waste any more time trying to create a design tool for Xbase++.
Alaska has been working on one for many years and if they ever finish it, I will adapt it to write eXpress++ code.

The entire idea behind eXpress++ is that the programmer can create applications faster in code than they can with a designer.

Hey Bobby - Do you see now why I didn't want to tell anyone about this? It gets these same old conversations started again.
There is so much more I can provide to the Xbase++ community than wasting time on a designer again.

Re: DC Designer

Posted: Wed Feb 17, 2010 4:26 pm
by bwolfsohn
rdonnay wrote: The entire idea behind eXpress++ is that the programmer can create applications faster in code than they can with a designer.

>>>The designer is a great tool, indeed but what tool do you use first to create the basic form ?
Roger,

So to answer the question that was asked, would someone first create the basic code in express, same as any other dialog, then use the designer to tune it ??

Brian

Re: DC Designer

Posted: Wed Feb 17, 2010 5:08 pm
by rdonnay
Yes

Re: DC Designer

Posted: Thu Feb 18, 2010 1:47 am
by pierredaou
I am trying to create a compiler to generate Dcsay/Dcget etc source generated from the Alaska Form designer PRG source . I am confused with the way the coordinates yield a completely different layout. Can anyone help with this issue.

source created with form designer :

oXbp := XbpStatic():new( drawingArea, , {16,336}, {80,288} )
oXbp:caption := "Group"
oXbp:type := XBPSTATIC_TYPE_GROUPBOX
oXbp:create()

oXbp := XbpStatic():new( drawingArea, , {176,576}, {80,32} )
oXbp:caption := "TEST"
oXbp:clipSiblings := .T.
oXbp:create()

oXbp := XbpStatic():new( drawingArea, , {96,544}, {80,80} )
oXbp:caption := "Group"
oXbp:type := XBPSTATIC_TYPE_GROUPBOX
oXbp:create()

compiled into Express

@ 16,336 DCSTATIC TYPE XBPSTATIC_TYPE_RECESSEDBOX SIZE 80,288
@ 176,576 DCSay "TEST" SIZE 80,32
@ 96,544 DCSTATIC TYPE XBPSTATIC_TYPE_RECESSEDBOX SIZE 80,80


Regards

Re: DC Designer

Posted: Thu Feb 18, 2010 2:50 am
by Koverhage
The designer use pixel coordinates, that mean you must use the PIXEL clause for all dc* commands.

Re: DC Designer

Posted: Thu Feb 18, 2010 3:44 am
by pierredaou
Hi,
I did use the pixel clause, of course. Is there an origin I should set in express in order to match the same x,y origine XPFDD ? :?:

==========================================================================================================

Regards