What is the status of NotebookCtrl?

I have been using Andrea’s NotebookCtrl in my primary application
since 2006 but, unlike his later works, it never seems to have been
adopted or supported. The link on the wiki :
points to
but this now only says

···

http://wiki.wxpython.org/NotebookCtrlhttp://xoomer.virgilio.it/infinity77/eng/freeware.html#notebookctrl*Sito non trovato - la pagina che
cerchi non esiste * - which even my primitive
Italian can translate!

  I guess the nearest matching replacement is FlatNotebook which

seems to have similar main features, although two features of
NotebookCtrl that I do make use of are:

  - Showing Pages In "Column/Row Mode", Which Means That All Pages

Will Be Shown In

    NotebookCtrl While The Tabs Are Hidden. They Can Be Shown In

Columns (Default)

    Or In Rows;

  - Possibility To Add A Custom Panel To Show A Logo Or HTML

Information Or Whatever

    You Like When There Are No Tabs In NotebookCtrl;

  What would you suggest is the best way forward?

-- Regards
David Hughes
Forestfield Software

Regarding this one it is really quite easy to implement for oneself.

Karsten

···

On Wed, Aug 10, 2011 at 04:29:52PM +0100, David Hughes wrote:

- Possibility To Add A Custom Panel To Show A Logo Or HTML
Information Or Whatever
  You Like When There Are No Tabs In NotebookCtrl;

--
GPG key ID E4071346 @ gpg-keyserver.de
E167 67FD A291 2BEA 73BD 4537 78B9 A9F9 E407 1346

Hi David,

I have been using Andrea's NotebookCtrl in my primary application

since 2006 but, unlike his later works, it never seems to have been
adopted or supported.

At the time when Robin came up with the idea for me to create and maintain the AGW library I decided not to include NotebookCtrl (and another widget) because it had become a nightmare to maintain and it wasn’t working properly on some platforms or for some users. Notwithstanding the beautiful refactoring Julianne Sharer had done on the code, all the bugs in it were due to my poor wxPython skills at that time.

The link on the wiki :

http://wiki.wxpython.org/NotebookCtrl points to
http://xoomer.virgilio.it/infinity77/eng/freeware.html#notebookctrl
but this now only says *Sito non trovato - la pagina che
cerchi non esiste * - which even my primitive
Italian can translate!

The correct address is this one:

http://xoomer.virgilio.it/infinity77/main/NotebookCtrl.html

  I guess the nearest matching replacement is FlatNotebook which

seems to have similar main features, although two features of
NotebookCtrl that I do make use of are:

  - Showing Pages In "Column/Row Mode", Which Means That All Pages

Will Be Shown In

    NotebookCtrl While The Tabs Are Hidden. They Can Be Shown In

Columns (Default)

    Or In Rows;



  - Possibility To Add A Custom Panel To Show A Logo Or HTML

Information Or Whatever

    You Like When There Are No Tabs In NotebookCtrl;



  What would you suggest is the best way forward?

If you only need these two features, I believe I can easily add them in FlatNotebook. I am tempted to hack AuiNotebook as well, but the fact that it can be split and re-arranged at one’s will is probably going to put a break on my ambitions. I’ll let you know when FNB will be ready to be tested in SVN.

Andrea.

“Imagination Is The Only Weapon In The War Against Reality.”
http://xoomer.alice.it/infinity77/

···

On 10 August 2011 18:29, David Hughes wrote:

Sorry, I left out wxPython-users :slight_smile:

···

---------- Forwarded message ----------
From: Andrea Gavana andrea.gavana@gmail.com

Date: 11 August 2011 23:17
Subject: Re: What is the status of NotebookCtrl?
To: David Hughes dfh@forestfield.co.uk

Hi David,

On 10 August 2011 19:51, Andrea Gavana wrote:

Hi David,

On 10 August 2011 18:29, David Hughes wrote:

I have been using Andrea's NotebookCtrl in my primary application

since 2006 but, unlike his later works, it never seems to have been
adopted or supported.

At the time when Robin came up with the idea for me to create and maintain the AGW library I decided not to include NotebookCtrl (and another widget) because it had become a nightmare to maintain and it wasn’t working properly on some platforms or for some users. Notwithstanding the beautiful refactoring Julianne Sharer had done on the code, all the bugs in it were due to my poor wxPython skills at that time.

The link on the wiki :

http://wiki.wxpython.org/NotebookCtrl points to
http://xoomer.virgilio.it/infinity77/eng/freeware.html#notebookctrl
but this now only says *Sito non trovato - la pagina che
cerchi non esiste * - which even my primitive
Italian can translate!

The correct address is this one:

http://xoomer.virgilio.it/infinity77/main/NotebookCtrl.html

  I guess the nearest matching replacement is FlatNotebook which

seems to have similar main features, although two features of
NotebookCtrl that I do make use of are:

  - Showing Pages In "Column/Row Mode", Which Means That All Pages

Will Be Shown In

    NotebookCtrl While The Tabs Are Hidden. They Can Be Shown In

Columns (Default)

    Or In Rows;



  - Possibility To Add A Custom Panel To Show A Logo Or HTML

Information Or Whatever

    You Like When There Are No Tabs In NotebookCtrl;



  What would you suggest is the best way forward?

If you only need these two features, I believe I can easily add them in FlatNotebook. I am tempted to hack AuiNotebook as well, but the fact that it can be split and re-arranged at one’s will is probably going to put a break on my ambitions. I’ll let you know when FNB will be ready to be tested in SVN.

Revision 68645 in SVN adds support for horizontally/vertically tiling pages and for showing a custom page when there are no pages left, just as NotebookCtrl did. The demo shows these new features under the “Edit” menu.

Please let me know if you encounter any problem.

Andrea.

“Imagination Is The Only Weapon In The War Against Reality.”
http://xoomer.alice.it/infinity77/


Andrea.

“Imagination Is The Only Weapon In The War Against Reality.”
http://xoomer.alice.it/infinity77/

==> Never EVER use RemovalGroup for your house removal. You’ll regret it forever.
http://thedoomedcity.blogspot.com/2010/03/removal-group-nightmare.html <==

That was quick! I didn’t even get round to posting that I was
looking forward to seeing it The custom page in my app works fine but the tiling doesn’t seem to
share out the available space evenly. This is with wxPython 2.9 and
I think it is due to the change there where the MinSize of the first
item takes precedence over the declared ‘proportions’ of the items

  • the tiling in the original NotebookCtrl is also affected using
    2.9, I have just checked. In similar cases I have had to add :
    self.item.SetMinSize(wx.Size(+1, +1)) or something, to overide the
    implied MinSize(wx.Size(-1, -1))
    Very many thanks.
···

:wink:


-- Regards
David Hughes
Forestfield Software

Hi David,

              On

10 August 2011 18:29, David Hughes wrote:

                        I guess the nearest matching replacement is

FlatNotebook which seems to have similar
main features, although two features of
NotebookCtrl that I do make use of are:

                        - Showing Pages In "Column/Row Mode", Which

Means That All Pages Will Be Shown In

                          NotebookCtrl While The Tabs Are Hidden.

They Can Be Shown In Columns (Default)

                          Or In Rows;



                        - Possibility To Add A Custom Panel To Show

A Logo Or HTML Information Or Whatever

                          You Like When There Are No Tabs In

NotebookCtrl;

                        What would you suggest is the best way

forward?

                  If you only need these two features, I believe

I can easily add them in FlatNotebook. I am
tempted to hack AuiNotebook as well, but the fact
that it can be split and re-arranged at one’s will
is probably going to put a break on my ambitions.
I’ll let you know when FNB will be ready to be
tested in SVN.

        Revision 68645 in SVN adds support for

horizontally/vertically tiling pages and for showing a
custom page when there are no pages left, just as
NotebookCtrl did. The demo shows these new features under
the “Edit” menu.

Please let me know if you encounter any problem.

          Andrea.
That was quick! I didn't even get round to posting that I was

looking forward to seeing it :wink:

Well, it was an easy hack :slight_smile:

The custom page in my app works fine but the tiling doesn't seem to

share out the available space evenly. This is with wxPython 2.9 and
I think it is due to the change there where the MinSize of the first
item takes precedence over the declared ‘proportions’ of the items

  • the tiling in the original NotebookCtrl is also affected using
    2.9, I have just checked. In similar cases I have had to add :
    self.item.SetMinSize(wx.Size(+1, +1)) or something, to overide the
    implied MinSize(wx.Size(-1, -1))

Thank you for reporting this, I’ll fix it this evening unless you have a specific reason to call SetMinSize(1, 1) on your notebook pages (panels). I didn’t notice it because I have tested it only with 2.8.11, but it appears to be a trivial modification.

Andrea.

“Imagination Is The Only Weapon In The War Against Reality.”
http://xoomer.alice.it/infinity77/

···

On 12 August 2011 16:29, David Hughes wrote:

On 11/08/2011 21:17, Andrea Gavana wrote: