resizing, etc.

Started by Don Dickinson, June 02, 2004, 04:11:54 PM

Previous topic - Next topic

Don Dickinson

Hi, I tried to look through the forum posts to make sure these aren't duplicates ... sorry if they are. First I should say i'm a new firefly user. Second ... great big applause to Paul for an outstanding job. I am impressed. Third, I should say that I use pb every day for console apps, a ton of DLLs, but just a few gui apps. If I need a gui with more than one window I almost always use Delphi. I also need to say that my intent of this post is not to make firefly behave like delphi:), but rather point out a few improvements from features in delphi. Firefly already does things that I wish delphi did. I just want you to know where i'm coming from.

One of the main reasons I have come to like Delphi has nothing to do with the language itself, but the add-on tools and components that compile in. I would like to see a few of the most useful built into the firefly framework. Here they are:

1. Non-api-based properties that handle control positioning on the resize of their parent. Delphi does this with the "Anchor" property. Normally controls are anchored at the top and left. That is, when a form is resized, the controls stay relative to the left and top of the window. If you turn on the right anchor too, then the control maintains the rightmost point relative to its container (it gets wider and stays "X" pixels from the right of its container). Anchor all 4 and you have a control that sizes with the container. This could be implemented with 4 boolean properties: anchorLeft, anchorRight, anchorTop, anchorBottom. Default=current behavior=anchorLeft+anchorTop

2. automatic control resizing. It would be nice to be able to say "this control is top-aligned in its container" (like a toobar), or bottom aligned (like a status bar) or client aligned (fill the container).

3. A form-property that tells the system to save the window position (in an .ini file) when the form is destroyed. So, if you set the "autoSave" property to true and fill in autoSaveFile to the .ini file and autoSaveSection to the ini section. The form would write out its x, y, width and/or state (e.g. maximized) to the ini file specified and read it on start-up. Expose a form function we can call to invoke this manually too (without setting the property).

thanks for listening!
don

TechSupport

Hi Don, great to have you aboard.  :thumbsup:

I have never used Delphi to any great extent but the ideas that you describe are very interesting. I certainly can't promise it because it does seem like a big job, but eventually it may find its way into FireFly.

You'll be happy to know that your XML code powers a lot of the internal guts of FireFly's data handling. Great job. :)

Anonymous

Paul,
Whilst we've got Don's attention here you might like to consider whether his wonderful DDOC product could be a candidate for integration into FireFly. I'll let Don get into the detailed stuff, but I would have thought having the capability of a standard print/print preview candidate would have been a great selling feature for FireFly and for DDOC.

I purchased DDOC some time ago but never got around to using it - until last week. With very little effort I was able to produce a very useful print arrangement for my DbDesign product. And DbDesign was 100% implemented using FireFly.

It's just a thought....I don't know whether it might be possible to encapsulate DDOC as a toolbox item.

For anyone who might be interested DDOC and other great software can be obtained via http://dickinson.basicguru.com/

Andrew

Don Dickinson

thanks for the kind words about ddoc.
ddoc would be able to print preview code from firefly, but it doesn't do syntax highlighting (easily). someday i plan on adding simple html (or more likely xml) based syntax printing in ddoc. at that time it would be a good fit. of course, i am more than willing to give paul whatever help he needs in such an endeavor. i am also looking at the feasibility and possible benefits of integrating ddoc as a custom control.

--don

Anonymous

I think "custom control" were the words I was looking for :)

Maybe a cut-down version? I seem to recall that DDOC is carrying quite a bit of baggage (not intended as an unkind term!) for communicating thru Fax and/or email. Would be nice to have just print capability I think.

Andrew