From: Jeff H. <je...@ac...> - 2009-08-05 16:56:35
|
I agree that perhaps 8.5 is now an acceptable base version. On 05/08/2009 2:16 AM, Koen Danckaert wrote: > Harald, > > Another option is to simply add some files to the current BWidget > sources, to support ttk. For example, there is scrollframe.tcl, and you > could add a tscrollframe.tcl file which uses ttk widgets. This has the > advantage that tk bwidgets and ttk bwidgets can be used in the same > application, which would not be possible in your proposal. (And which is > not even possible in the current half-working approach, since there is a > single global BWidget::theme variable). > > Of course, this is not possible if you want (or need) to rewrite the > complete framework (in widget.tcl). But in that case, maybe it would > even be better to start from scratch and make a new CWidget package... :-/ > > Concerning compatibility: I agree it is hard to keep compatible with old > Tk releases. I'm really used to operators such as {*}, eq, ne,... and I > don't realize anymore they only exist since Tcl 8.5. I really think we > should move forward - after all bug fixing on Tk 8.4 has also stopped. > People who keep using 8.4, can also keep using BWidget 1.9. > > Regards, > Koen > > > > Harald Oehlmann wrote: >> Hi community, >> >> **I would apreciate, if a tcl-lib expert would answer the question at >> the end of this e-mail** >> >> as announced in my email on this list: >> Subject: [Tcllib-devel] BWidget verification, tagging and TBWidget >> Date: 2009-07-20 >> >> it is planed to branch BWidget into two source trees: >> - BWidget - use tk8.1 and later, no ttk code >> - TBWidget - use ttk8.5 and later, no tk and tcl8.1-8.4 code >> >> Why two source trees ? It is a real split of scope. >> BWidget is complicated enough. To support ttk and tk, many code will be >> doubled. In addition, I don't want to drop tk8.1 compatibility, but many >> things just would be more elegant and some work-arounds will go away. >> >> I am in doubt on the cvs level how to do this. >> >> Two alternatives: >> >> 1) use module bwidget and put TBWidget into a branch >> >> How to branch: >> >> cvs -z3 -d:ext:oe...@tc...:/cvsroot/tcllib rtag -b >> -r bwidget-1-9-0 tbwidget bwidget >> >> How to checkout: >> >> cvs -z3 -d:ext:oe...@tc...:/cvsroot/tcllib >> checkout -r tbwidget -P bwidget >> >> Advantage: all history kept >> Disadvantages: >> - No head revision for tbwidget >> - Have to specify -r tbwidget on all operations for tbwidget >> >> 2) Create a new module tbwidget >> >> cvs -z3 -d:ext:oe...@tc...:/cvsroot/tcllib import >> tbwidget oehhar tbwidget >> >> Advantage: Own head revision for BWidget and TBWidget, much clearer >> Disadvantage: file history lost for TBWidget >> >> 3) do something else ??? >> Other ideas ? Migrate to subversion where this is not an issue ;-) >> >> Properties of both solutions: >> - No change for BWidget on the cvs level >> >> Thank you for any insights. >> >> Regards, >> Harald |