From: Erik Leunissen on
Hello all,

When populating a BWidget notebook page with arbitrary widgets, the
notebook geometry doesn't propagate. You may try the code below to
appreciate that.

To see any contents of the notebook, one needs to enlarge the master.
(And after doing [wm geometry $master {}] the master shrinks back to
make the notebook mostly invisible again.

How can I make the notebook propagate?

I've tried [pack propagate], [pack configure -expand 1 -fill both] on
the notebook and its child widgets.

All to no avail.

Any help much appreciated,

Erik Leunissen
==============

% toplevel .test
..test
% package require BWidget
1.9
% pack [NoteBook .test.nb]
% .test.nb insert end page0 -text page0
..test.nb.fpage0
% .test.nb raise page0
page0
% pack [label .test.nb.fpage0.lbl1 -text foo]
% wm geometry .test {}
% pack [label .test.nb.fpage0.lbl2 -text foo]
% pack [label .test.nb.fpage0.lbl3 -text foo]
% pack [label .test.nb.fpage0.lbl4 -text foo]
% wm geometry .test {}
%

--

--
leunissen@ nl | Merge the left part of these two lines into one,
e. hccnet. | respecting a character's position in a line.
From: Erik Leunissen on
Erik Leunissen wrote:
>
> How can I make the notebook propagate?
>

Never mind. I found the solution:

It's done through the widget command [$pathName compute_size].

Erik
--
leunissen@ nl | Merge the left part of these two lines into one,
e. hccnet. | respecting a character's position in a line.
From: Thomas MENEZ on
On Jan 12, 11:27 pm, Erik Leunissen <l...(a)the.footer.invalid> wrote:
> Hello all,
>
> When populating a BWidget notebook page with arbitrary widgets, the
> notebook geometry doesn't propagate. You may try the code below to
> appreciate that.
>
> To see any contents of the notebook, one needs to enlarge the master.
> (And after doing [wm geometry $master {}] the master shrinks back to
> make the notebook mostly invisible again.
>
> How can I make the notebook propagate?
>
> I've tried [pack propagate], [pack configure -expand 1 -fill both] on
> the notebook and its child widgets.
>
> All to no avail.
>
> Any help much appreciated,
>
> Erik Leunissen
> ==============
>
> % toplevel .test
> .test
> % package require BWidget
> 1.9
> % pack [NoteBook .test.nb]
> % .test.nb insert end page0 -text page0
> .test.nb.fpage0
> % .test.nb raise page0
> page0
> % pack [label .test.nb.fpage0.lbl1 -text foo]
> % wm geometry .test {}
> % pack [label .test.nb.fpage0.lbl2 -text foo]
> % pack [label .test.nb.fpage0.lbl3 -text foo]
> % pack [label .test.nb.fpage0.lbl4 -text foo]
> % wm geometry .test {}
> %
>
> --
>
> --
>   leunissen@       nl | Merge the left part of these two lines into one,
> e.          hccnet.   | respecting a character's position in a line.

Hello !

Do you have the same issues with Tk 8.5's notebook ? Maybe it's time
to forget BWidgets and move on to something sexier ;).

From: Erik Leunissen on
Thomas MENEZ wrote:
>
> Do you have the same issues with Tk 8.5's notebook ? Maybe it's time
> to forget BWidgets and move on to something sexier ;).
>

Hmm, thanks. I didn't realize Tk had a notebook widget.

Will have a look, maybe there is some mutual attraction ...

Erik.
--
leunissen@ nl | Merge the left part of these two lines into one,
e. hccnet. | respecting a character's position in a line.
From: MSEdit on
On Jan 14, 12:10 am, Erik Leunissen <l...(a)the.footer.invalid> wrote:
> Thomas MENEZ wrote:
>
> > Do you have the same issues with Tk 8.5's notebook ? Maybe it's time
> > to forget BWidgets and move on to something sexier ;).
>
> Hmm, thanks. I didn't realize Tk had a notebook widget.
>
> Will have a look, maybe there is some mutual attraction ...
>
> Erik.
> --
>   leunissen@       nl | Merge the left part of these two lines into one,
> e.          hccnet.   | respecting a character's position in a line.

ttk::notebook is in the tile package included with 8.5, it works well
if you have a fixed number of tabs it also fits well with the rest of
the tile widgets. If however you open tabs dynamically(editor/
browser...) then you need to use Bwidgets notebook as ttk::notebook
does not gracefully handle having too many tabs for the space
available, it just shrinks them down until there is no more space then
things dissapear. BWidget handles this in the same way as most of the
browsers and several editors by scrolling the tabs. I have even
managed with a few lines of tcl to use the mouse wheel to scroll the
tabs in the same way as Firefox.

Martyn