eserte / perl-tk

the perl module Tk
https://metacpan.org/release/Tk
Other
44 stars 31 forks source link

Controlling pane growth in Panedwindow #75

Open hvds opened 3 years ago

hvds commented 3 years ago

Hi, as per my perlmonks node, I wish to create a two-pane Panedwindow in which the left (respectively: top) pane is the one to grow when the window gets resized rather than the default right/bottom pane. I see that Tk-8.5 added a stretch attribute that makes that possible; it also ships with ttk, which includes a variant Panedwindow supporting an even more powerful weight attribute.

The 8.4 behaviour seems to be rather hardwired: I think it is implemented in pTk/mTk/generic/tkPanedWindow.c:ArrangePanes(), but I haven't yet attempted to fully understand that code.

Assuming an update to support Tk-8.5 or later is not imminent, can you suggest a way of achieving the same effect with the existing Perl-Tk, short of duplicating pretty much all of the Panedwindow C, TCL and Perl code?

chrstphrchvz commented 3 years ago

I think it may be feasible for Perl/Tk to incorporate support for -stretch. It was implemented in upstream Tcl/Tk as TIP 177: tcltk/tk@8fe41c5f51; hopefully there aren't too many bug fixes to have to backport as well.