On Tue, 15 Jul 2003 01:22:25 +0200 (Romance Daylight Time) Vadim Zeitlin <[EMAIL PROTECTED]> wrote:
> On Fri, 27 Jun 2003 16:34:30 +0200 (CEST) Robert Vazan > <[EMAIL PROTECTED]> wrote: > > RV> > Sorry, I don't follow you -- why? If the users code uses sizers, > RV> > wxWizard > RV> > will use them to size tiself correctly, isn't this what we want? > RV> > RV> You never know whether calling code uses sizers because new pages > can be > RV> added at any time. Adding all pages into some sizer isn't solution as > RV> the wizard would then lose its current automatic resizing feature. > > I don't understand this -- surely the wizard could still find the max > size > of all pages starting from the first one as it currently does in > FitToPage() even if the sizer were used internally? The advantage is that > you could add pages which can't be reached by applying GetNext() to the > first one to the sizer as well. What you are writing here seems to be actual behaviour of patched wizard, so what's the problem? Yes, it exports internal page area sizer, but it calls FitToPage for all reachable pages anyway. > The only problem is that you may not want to construct thep age at all > unless it is really needed (this is the case for some pages in Mahogany, > for example it takes time to initialize the dial up page of the install > wizard and why do it if the user doesn't choose to use it at all?). I > think > that the simplest and best solution would be to do real initialization in > TransferDataToWindow() which is only called when the page is really > shown, > not in the page ctor. Yes, calling FitToPage was really consequence of laziness. I could resize one page at a time with few more lines of code. As I look at dial up page, it would be probably necessary to change it as you describe if we continue to call FitToPage for first wizard page. > RV> Then why not make new behaviour forced without any checks? > > Sorry, which new behaviour? This was lost in thread. We talked about style flag that switches between old behaviour (100-percent identical to old wizard except implementation) and new behaviour (automatic FitToPage for all pages, user-resizable window, no border around page). The GetPageAreaSizer is independent of the flag, but it wasn't meant to be used alone. The question was, whether this flag should be left as it is, changed to member function, or made default. I proposed above to make it default from wxWindows 2.5 up, forcing all applications to deal with it, because everybody is using sizers for individual pages anyway. > It looks (from reading the code) that the wizard size may change when > passing to another page -- is this true? Yes, that's what sizers are for, after all. The only problem I had with this is that very big page following smallest page will move center of wizard significantly away from center of screen. Keeping it centered requires some work (sizers are calculated in asynchronous events) and this functionality should be part of wxWindow, not wxWizard. ------------------------------------------------------- This SF.Net email sponsored by: Parasoft Error proof Web apps, automate testing & more. Download & eval WebKing and get a free book. www.parasoft.com/bulletproofapps1 _______________________________________________ Mahogany-Developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mahogany-developers
