2022-12-25 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.16 tagged **** 2022-10-12 Wolfgang Kechel <wolfgang.kechel@prs.de> dropsite.tcl: Prevent multiple drops, when movement while drop is processed. Ticket [1ef1f56cd1] 2021-12-03 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.15 tagged **** 2021-12-03 Harald Oehlmann <oehhar@users.sourceforge.net> mainframe.tcl: Recalculate status bar height if the text size is changed by a change of a used named font. Ticket [acbd67752a] 2021-08-05 Harald Oehlmann <oehhar@users.sourceforge.net> notebook.tcl: Repaint tabs if the text size is changed by a change of a used named font. Ticket [acbd67752a] 2019-12-03 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.14 tagged **** 2019-11-12 Harald Oehlmann <oehhar@users.sourceforge.net> spinbox.tcl: fix error about unsupported option -disabledforeground when using themed widgets. Thanks to Gerhard Reithofer and Christian Werner. Ticket [071fc80f14] 2019-05-06 Harald Oehlmann <oehhar@users.sourceforge.net> mainframe.tcl: Add optional parameter "Top" to internal function "MainFrame::_create_menubar" to allow to use a menu button for the main menu (Hack). The mainframe may be initialized with "- menu {}". Then, the menubutton may be created and the menu may by added by: MainFrame::_create_menubar .mf $mitems $menubutton. Allow to skip a main menu level by empty menu label. Purpose: support commands/checkboxes at first level. 2018-12-11 Harald Oehlmann <oehhar@users.sourceforge.net> scrollframe.tcl: use Tk8.7 TIP 518 virtual event <<NoManagedChild>> to resize client frame to 1x1 when last child is unmapped. 2018-12-06 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.13 tagged **** 2018-11-26 Harald Oehlmann <oehhar@users.sourceforge.net> dialog.c: For Unix, also Bind KP_Enter for default dialog button invokation. Ticket [3e31f04367]. Thanks to Jos for the proposal. 2018-01-09 Harald Oehlmann <oehhar@users.sourceforge.net> Spanish translation enhanced by Neko. Ticket [a947e33526] 2018-01-10 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.12 tagged **** 2018-01-10 Harald Oehlmann <oehhar@users.sourceforge.net> color.tcl: replace the help widget by balloons bound to the widgets. Ticket [2cc70ce1cb] 2018-01-09 Harald Oehlmann <oehhar@users.sourceforge.net> color.tcl: New option -command allows to get a callback when the user does an unvalidated choice. New option -background and command SelectColor for window background. TitleFrames, Dynamic help and Aqua native buttons used. Show current choice by highlighting, not focus, to avoid conflict with keyboard traversal. Shows entry widget for numerical color input/output. New option -help to show a help area. Patch by Keith J. Nash Ticket [75101bf5ce] Translators: Jima (es), Vogel (fr), Marcus (nl), Ian (da) Ticket [a947e33526] 2017-11-03 Harald Oehlmann notebook.tcl (+man,demo): Add possibility to NoteBook to add an image at the right of each tab. Ticket [15e19fe9ec]. Patch by Keith J. Nash. 2017-08-25 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.11 tagged **** 2017-05-08 Harald Oehlmann MessageDlg.html: Documented the use of the native widget for "MessageDlg -type !user" and the limited set of recognized options. Ticket [8edade3cea] by Gerhard Reithofer 2016-10-31 Harald Oehlmann scrollframe.tcl: Eric advised to check for unmapped window, as the <Map> event may be executed in the unmapped state. 2016-10-31 Harald Oehlmann scrollframe.tcl: width changed when unmapped and mapped. Checkge the Configure vound proc to not be active when currently unmapped. Ticket [72a5727d1b]. Thanks to Alexandru for the ticket and patch. 2016-10-31 Harald Oehlmann button.tcl: Reverted last change, Eric underlined to not use ttk widgets as a base due to the option data base. Did traditional fix to exclude all options known by button and not known by ttk::button. Ticket [845613e5590ae7cf] 2016-08-23 Harald Oehlmann button.tcl: configure option of a ::Button gave error in themed mode. Ticket [845613e5590ae7cf]. Report by Adrian. 2016-07-21 Harald Oehlmann util.tcl: BWidget::place moved away from visible screens if the current window is on a virtual screen outside of the main screen (Windows multi-screen configuration). Ticket [5919a0ec2d] 2016-07-15 Adrian Madrano Calvo pckIndex.tcl: auto-load commands also from global namespace and not only from BWidget namespace. Ticket [c86207db01] 2016-03-22 Harald Oehlmann <oehhar@users.sourceforge.net> Only support themed packages Tile 0.8 or Ttk. Repair the button spacing in themed font toolbar. Ticket [d7ea07c40a] 2016-03-15 Harald Oehlmann <oehhar@users.sourceforge.net> mainframe.tcl: "Mainframe configure" caused error in themed mode. Ticket [52273c0a4e] 2016-03-08 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.10 tagged **** 2016-01-07 Adrian Medrano Calvo listbox.tcl: Listbox did not scroll to current item on startup. Ticket [ae238d5a7] 2016-01-07 Harald Oehlmann <oehhar@users.sourceforge.net> lang/da.rc, lang/es.rc, lang/fr.rc, lang/no.rc: Translations non portable on utf-8 systems. File encoding changed to utf-8. Ticket [6c91e43d76] 2016-01-07 Harald Oehlmann <oehhar@users.sourceforge.net> tree.tcl: Tree lines are black by default even if background is black. Ticket [ed4c1dab46] 2015-12-08 Harald Oehlmann <oehhar@users.sourceforge.net> listbox.tcl: 8.4 compatibility was broken due to the use of min/max math functions. Ticket [0aef856302] 2015-11-04 Harald Oehlmann <oehhar@users.sourceforge.net> dynhelp.tcl: Drop the assumption that all windows screen are the same size (of fix dated 2009-06-26) and use the virtual screen information to place the bubble help. Ticket [b64e03e548]. 2015-10-18 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.9 tagged **** 2015-03-18 Harald Oehlmann <oehhar@users.sourceforge.net> widget.tcl: Widget::define got new parameter -namespace, allowing megawidget namespace be different to class name. This allows lower case namespace names. Patch by Adrian Medrano Calvo. Ticket [023a631b20] 2014-09-10 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.8 tagged **** 2014-09-05 Harald Oehlmann <oehhar@users.sourceforge.net> widget.tcl: Widget::which errors when option not present. Ticket [397db23424] 2014-05-21 Harald Oehlmann <oehhar@users.sourceforge.net> widget.tcl: Don't invoke unqualified upvar in callers scope. Patch by Adrian Medrano Calvo. Ticket [046fa04231] widget.tcl: Don't double creation of temporary widget for default values retrieval. Use result of _get_tkwidget_options instead. By Adrian Medrano Calvo. Ticket [393b67ab19] widget.tcl: New procedure Widget::which (as in [namespace which]), that returns the fully qualified name for a widget option or widget variable. By Adrian Medrano Calvo. Ticket [a8705e5fd9] widget.tcl: Remove unneeded upvar. By Adrian Medrano Calvo. Ticket [43f93e0a97] widget.tcl et al: remove apparently unused procedure Widget::syncoptions and all calls. By Adrian Medrano Calvo. Ticket [3c2b8eafc6] 2013-12-13 Harald Oehlmann <oehhar@users.sourceforge.net> scrollframe.tcl: Make -constrainedwidth 1 and -constrainedheight 1 work together. Patch by Simon Bachmann. Ticket [2fa44401d5] 2013-10-17 Harald Oehlmann <oehhar@users.sourceforge.net> widget.tcl: Remove temporary widget. By Wolfgang S. Kechel. Ticket [6cd041bcc1] 2013-10-15 Harald Oehlmann <oehhar@users.sourceforge.net> combobox.tcl: Themed ComboBox color specifications are honored. By Wolfgang S. Kechel. Ticket [6c6704e40f] 2013-10-14 Harald Oehlmann <oehhar@users.sourceforge.net> combobox.tcl: Fails in themed mode with "unknown option -bg". Patch solves this but listbox items are white on white when "-foreground" is specified. By Wolfgang S. Kechel. Ticket [6632134ce9] listbox.tcl: Update on option -deltay added. Set x0 to 2 to make highlight work and look nice for listbox with image. Take image into account to show selection. By Wolfgang S. Kechel. Ticket [ff1787af9c] scrollw.tcl: Raise scrolled window if it is below in the window hierarchy. By Wolfgang S. Kechel. Ticket [ff1787af9c] 2013-10-07 Harald Oehlmann <oehhar@users.sourceforge.net> dynhelp.tcl: Sometimes the tooltip does not occur under gnome/metacity on ubuntu. By Wolfgang S. Kechel. Ticket [a588d2f800] 2013-09-15 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.7 tagged **** 2013-09-11 Harald Oehlmann <oehhar@users.sourceforge.net> xpm2image.tcl: many issues fixed in xpm import by Mattias Hembruch. Ticket [9a8b2ee42e] 2013-08-14 Harald Oehlmann <oehhar@users.sourceforge.net> * notebook.tcl: cured error in _resize, that data($p,width) is not (jet) present. Ticket [a4cbba655d]. 2013-06-28 Harald Oehlmann <oehhar@users.sourceforge.net> * mainframe.tcl: Included Patch [9f67a66609] curing issues of Shift-Accellerators with Shift-Lock on Mac. By Keith Nash, Ticket [83ce3e84e7]. 2013-06-26 Harald Oehlmann <oehhar@users.sourceforge.net> * mainframe.tcl: Reverted Patch [1977644] (-casesensitive for accellerators). It has issues with shift-lock. 2013-06-21 Harald Oehlmann <oehhar@users.sourceforge.net> * labelentry.tcl: Bug fixed: Methods from Tk entry widget restored [Bug 1002844]. * mainframe.tcl: Allow case sensitive accelerators by new option -casesensitive. Patch by cmard [Patch 1977644] * mainframe.tcl: Allow new modifiers Shift, Cmd and ShiftCmd for accelerators. Patch by K.J.Nash [Patch-83ce3e84e7] * mainframe.tcl: When changing MainFrame -background, do not change menu colors on Aqua. Fix by Keith J.Nash [Bug-a81b7afc1e] * init.tcl: Make loadable in save interpreter. Fix by Keith J.Nash [Bug-4365a23bd3] * combobox.tcl: Add method getentry to return entry widget path for bind purposes. Patch by Michael [Patch-2340355] 2013-01-09 Harald Oehlmann <oehhar@users.sourceforge.net> * widget.tcl: Bug fixed: Error 'invalid command name ".#BWidget.#ttk::entry"' arises in themed mode when an Entry widget should get focus by the tab key. The temporary widget creation fails due to the "::" in the command name of ttk widgets. Any "::" is replaced by "__" [Bug 3599955]. 2011-07-27 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.6 tagged **** 2012-04-12 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl ListBox::selection Only redraw if selection changed. Patch by Wolfgang S. Kechel [Bug 3517145] 2012-04-02 Harald Oehlmann <oehhar@users.sourceforge.net> * entry.tcl, BWMan/entry.tcl checkbox.tcl Themed mode: Invoking "configure" without arguments results in errors that non-ttk options are not present. Removed Entry options: -background -foreground -relief -borderwidth -fg -bg -bd. Reported by Wolfgang S. Kechel [Bug 3513263] * entry.tcl mapped entry option -state to ttk::entry state in themed mode to make state change visible. 2012-03-06 Harald Oehlmann <oehhar@users.sourceforge.net> * BWMan/ListBox.html documented options -selectfill and -autofocus as read-only. Reported by Wolfgang S. Kechel [Bug 3497592] 2011-11-14 Harald Oehlmann <oehhar@users.sourceforge.net> * widget.tcl (Widget::focusOK) fixed list with update. Arises, if a ttk widget with a widget path with spaces is the next widget. Reported by jaspertheperson [Bug 3437761] 2011-06-24 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.5 tagged **** 2011-06-23 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl (listbox::generate_data) fixed last patch by ryotakatsuki [Bug 3324610] 2011-06-23 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl Fix of Bug 3000293 broke listbox tags. The bindImage subcommand did not report right tag. Patch by ryotakatsuki [Bug 3324610] 2011-06-23 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl, tree.tcl (_update_scrollregion) the linewise scrolling did not always scroll up to the end on windows 7. Report and patch by Wojciech Kocjan, review and modification by Koen Danckaert [Bug 3317772] 2011-05-25 Harald Oehlmann <oehhar@users.sourceforge.net> *mainframe.tcl: Add a boolean readonly option -sizegrip to show a sizegrip widget in themed mode. 2011-05-24 Harald Oehlmann <oehhar@users.sourceforge.net> *lang/pl.rc updated by Wojciech Kocjan. 2011-04-26 Harald Oehlmann <oehhar@users.sourceforge.net> *notebook.tcl The user frame of the notebook is now a themed frame in themed mode. The set background color does not apply to the user frame in this case. 2011-04-26 Harald Oehlmann <oehhar@users.sourceforge.net> label.tcl configuring foreground color caused error when themed [Bug 3292977] 2011-04-20 Harald Oehlmann <oehhar@users.sourceforge.net> lang/hu.rc by Rezso updated 2011-04-20 Harald Oehlmann <oehhar@users.sourceforge.net> * font.tcl, lang/*.rc: Add translation possibility for color picker button of font dialog. Used google translater to translate "Color" to all languages. Please check if this is correct. [Bug 3289573] reported by Rezso 2011-04-19 Harald Oehlmann <oehhar@users.sourceforge.net> * lang/*.rc [Bug 3289573] : Add translation (templates) for the Color picker widget text "Base colors" and "User colors". Only german and english locals are provided so far. 2011-02-14 Harald Oehlmann <oehhar@users.sourceforge.net> * combobox.tcl: [Bug 3182287] : ComboBox failes in themed mode due to the use of the themed entry widget. The following options are not supported (and thus called) any more: -relief -highlightbackground -highlightforeground 2011-02-14 Harald Oehlmann <oehhar@users.sourceforge.net> * entry.tcl, labelentry.tcl, labelframe.tcl, mainframe.tcl, pagesmgr.tcl, scrollw.tcl: [Bug 3168761]: entry failes when themed support activated with: unknown option "-highlightthickness" (reported by George on clt 27 Jan., 16:55). The patch by Wojciech Kocjan fixes this and enhances labelentry, labelframe and pagesmgr to also use themed frames. Within scrollw.tcl, a bug for empty background handling is fixed. The scrollbar background is not set any more for not-themed widget. 2011-01-17 Harald Oehlmann <oehhar@users.sourceforge.net> * pkgIndex.tcl: corrected package version in package provide 2010-12-14 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.4 tagged **** 2010-12-14 Andreas Kupries <andreask@activestate.com> * tree.tcl [Bug 3106208]: Followup. Moved the fixed code of the last entry I did (2010-11-09) into a new command Tree::MergeFlag and call this from both Tree::itemconfigure and Tree::insert. Missing the place in Tree::insert caused another problem, found by Dustin Littau. 2010-11-05 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.3 tagged **** 2010-11-23 Harald Oehlmann <oehhar@users.sourceforge.net> * scrollw.tcl Add theming support for ScrolledWindow widget. * ScrolledWindow.html Themed mode documented. 2010-11-21 Harald Oehlmann <oehhar@users.sourceforge.net> * label.tcl Add theming support for Label widget. * label.html Themed mode documented. 2010-11-16 Harald Oehlmann <oehhar@users.sourceforge.net> * button.tcl Add theming support for Button widget. Option "-relief link" is mapped to "Toolbutton style. Option -height is not available when themed. Thanks to Kevin Walzer for the test on MacOS. * buttonbox.tcl When themed, only set themed button options. The widget itself is not jet themed. * Dialog.html Removed documentation of unavailable option -buttonwidth. 2010-11-09 Andreas Kupries <andreask@activestate.com> * tree.tcl (Tree::itemconfigure): Fix intermingling of node names and flag values which can cause an lsearch to fail, by mistaking a flag value as the node searched for, and then treating a node name as flags. As the upd,nodes value is a dictionary it should not be search as a list. Now using a temporary array for quicker check and append/replace [Bug 3106208]. 2010-11-09 Harald Oehlmann <oehhar@users.sourceforge.net> * mainframe.tcl Menu text shows white on white on Mac aqua [Bug 3105665] reported by Scott Smedley fixed by Kevin Walzer. 2010-10-15 Harald Oehlmann <oehhar@users.sourceforge.net> * label.tcl The frame surround the label gets under unknown conditions a -padx 5. A pad of 0 is now hard coded (Bug 3087955) 2010-08-04 Harald Oehlmann <oehhar@users.sourceforge.net> * dialog.tcl Changed behaviour of window close button. If -cancel is given, this button is invoked. The cancel option may now be changed using the configure method. * init.tcl If msgcat is available use its locale to load a lang/*.rc file instead always using en.rc. 2010-06-09 Harald Oehlmann <oehhar@users.sourceforge.net> * Included lang/pl.rc from HEAD. 2010-06-07 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.2 tagged **** Version 1.9.1 was skipped. This was released in ActiveTCL and thus may exist on many installations. 2010-05-31 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.html Reflected patch 2010-05-12 in documentation. The selection may not be disabled any more by binding button 1. 2010-05-12 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl(ListBox::bindText and ListBox::bindImage) Method bindText and bindImage overwrote internal selection bindings [Bug 3000293] reported by Robert Karen. 2010-05-11 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl(ListBox::see) Method see shifts image out of view. Showed up, by a selection click on a long item with icon [Bug 2999764] reported by Robert Karen. 2010-05-05 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl(ListBox::_configureSelectmode) Drag modifies multiple selection [Bug 2995969] reported by Robert Karen. Bound events on ButtonRelease-1 instead Button-1 for multiple selections to avoid bug. * listbox.tcl(ListBox::_drag_and_drop) The default drag and drop routine only handled single drag and drop. It was extended to handle also drag and drop of multiple entries. 2009-09-03 Harald Oehlmann <oehhar@users.sourceforge.net> * util.tcl(BWidget::place), BWidget.html Widget placed incorrectly, when bigger than current screen [Bug 2850031] by Thomas Grausgruber Possible incompatibility: BWidget::place w h -> w,h are reduced to screen width. 2009-08-12 Harald Oehlmann <oehhar@users.sourceforge.net> * dynhelp.tcl Use balloon help font TkTooltipFont if tk <= 8.5. Otherwise use helvetica 11 on Aqua [Patch 2835180] for Kevin Walzer * dynhelp.tcl(DynamicHelp::_show_help)Replaced aqua conditional code check by $Widget::_aqua 2009-08-10 Harald Oehlmann <oehhar@users.sourceforge.net> * notebook.tcl (NoteBook::delete) Method delete destroyframe=1 and reinsertion -> raise failed - state variables were deleted. [Bug 2831785] by kjnash * tree.tcl (Tree::_keynav) Fire virtual event <<TreeSelect>> also on keyboard navigation [Patch 2828086] by Kevin Walzer * combobox.tcl Replaced aqua conditional code check by $Widget::_aqua 2009-08-10 Harald Oehlmann <oehhar@users.sourceforge.net> **** Branched to bwidget **** This is the bwidget branch of module bwidget of tcllib Use "-r bwidget" for all cvs operations Scope: Package BWidget compatible to tcl/tk 8.1 and tk (e.g. no tile/ttk). 2009-07-24 Harald Oehlmann <oehhar@users.sourceforge.net> **** BWidget 1.9.0 tagged **** * pkgIndex.tcl, README.txt: updated to BWidget 1.9 2009-07-23 Harald Oehlmann <oehhar@users.sourceforge.net> * tree.tcl (Tree::_set_help), Tree.html DynamicHelp -helpcmd added to tree node help * tree.tcl (Tree::_draw_subnodes) a vertical line to a virtual root node above the widget is only drawn when there are multiple child nodes. This reverts the modification dated 2004-04-21 for this case. [Patch 2825354] by Koen Danckaert 2009-07-17 Harald Oehlmann <oehhar@users.sourceforge.net> * scrollframe.tcl (ScrollableFrame::create et al) ScrollableFrame.html Background color of canvas takes the color of the scrolled frame. If themed, canvas takes the themed color of the scrolled themed frame. If themed, parameters -background and -bg are not available(doc + code). [Patch 2822970] by Koen Danckaert 2009-07-15 Harald Oehlmann <oehhar@users.sourceforge.net> * dynhelp.tcl (DynamicHelp) Typo from yesterday corrected [Patch 2820851] by Koen Danckaert 2009-07-14 Harald Oehlmann <oehhar@users.sourceforge.net> * dynhelp.tcl (DynamicHelp::_leave_info et al) issues: - menu help sometimes not cleared when clicking off-window (unix) - "-helpcmd" available also when dynamichelp is included in another widget. - given "-helpcmd" always called at global scope. - Protect against multiple calls of <Leave> event. [Patch 2820851] by Koen Danckaert 2009-07-07 Harald Oehlmann <oehhar@users.sourceforge.net> * combobox.tcl (ComboBox::_select) Do not export selection if -exportselection 0 [Patch 981545] by Jeffrey Hobbs 2009-07-02 Harald Oehlmann <oehhar@users.sourceforge.net> * widget.tcl (Widget::configure) Bug: ProgressDlg option -geometry not setable. The former patch was improved. Koen Danckaert and myself argued, that we modify symptoms without basic understandings. Anyway, better now than before. 2009-07-01 Harald Oehlmann <oehhar@users.sourceforge.net> * mainframe.tcl, MainFrame.html (MainFrame::getmenustate) Added method getmenustate to return menu tag state [Bug 948063] reported by Rolf Ade * combobox.tcl (ComboBox::configure) Bug fixed: Widget did not take focus, when -editable false and "configure -state normal" called. [Bug 756334] reported by Rolf Ade * widget.tcl (Widget::configure) Bug: ProgressDlg option -bg not setable. The special handling of subwidgets with special class or path ":cmd" was improved. [Bug 611477] * notebook.tcl (NoteBook::_itemconfigure) Not honored option: itemconfigure ... -helptext [Patch 2814050] by Koen Danckaert 2009-06-30 Harald Oehlmann <oehhar@users.sourceforge.net> * buttonbox.tcl (ButtonBox::_redraw) Bug corrected: -uniform gridding option is used if tcl version >= 8.4 (not 8.3). [Patch 2807147] by Koen Danckaert * tree.tcl (Tree::_drop_cmd) If there is no node, drop didn't work. [Bug 1042613] reported by Rolf Ade * Tree.html Bind commands: removed promise that %W would work in future. The underlying widgets should only be manipulated using the node id. [Bug 1224203] by Jasper Taylor, remarks by J. Tang * Tree.html Bind commands: with -selectfill, the given command is overwritten for the background box. [Bug 1003962] by Torsten Berg * dropsite.tcl (DropSite::register) Bug fixed: fails on multiple drop targets [Bug 1213123] by T.Neil * combobox.tcl (ComboBox::_create_popup) Bug fixed: Return key in drop down list when -bwlistbox true [Bug 1205536] patch by Steve Landers * combobox.tcl (ComboBox::_create_popup, ComboBox::_unmapliste) Mac aqua and x11 fixes, multi screen issue still open. [Bug 1451784] report by Jasper Taylor, fix by Kevin Walzer * listbox.tcl (ListBox::_multiple_select) Selected item not deselected on control-click [Bug 1029144] reported by Konrad Rosenbaum 2009-06-29 Harald Oehlmann <oehhar@users.sourceforge.net> * ScrolledWindow.html ScrolledWindow documentation changed: Documented options: -ipad, -sides, -size, -managed [Patch 2807160] Text by Koen Danckaert Removed (read only) remark of option -scrollbar. * scrollframe.tcl (ScrollableFrame::create) changed bindings [Patch 2807227] by Koen Danckaert (comment) * scrollw.tcl (ScrolledWindow::_set_hscroll, ScrolledWindow::_set_vscroll) Bug corrected: enless loop when both scrollbars where automatically mapped and the window size was changed by this action (on linux). Scrollbar unmapping and mapping secured by a locked update [Bug 2783019] * widget.tcl (Widget::tkinclude) : option data base entry name keeps the original name and not the renamed name. The only resulting modification is to rename the option key for "MessageDlg -text" from "*MessageDlg.frame.msg.message" to "*MessageDlg.frame.msg.text". [Bug 1266792] * widget.tcl (Widget::init) : fixed a memory leak on wrong option value. [Bug 1230737] 2009-06-26 Harald Oehlmann <oehhar@users.sourceforge.net> * listbox.tcl (ListBox::create et al) new feature: listbox option -listbox now read/write [Bug 1501874] reported by Stephen Huntley * dynhelp.tcl (DynamicHelp::_show_help) fixed issue (as far as possible): Dynamic help baloon was on the main screen, if it touched the border on a windows multi screen configuration. The fix assumes, that all screens have same dimensions and no gaps in- between. This is necessary, because multi-screen configuration paramters may not be interrogated by tk (despite of coordinates out of the screen) [Bug 1499135] reported by Gregor * notebook.tcl (NoteBook::delete) Deleted also state variables [Bug 1445219] reported by Eric Kemp-Benedict 2009-06-25 Harald Oehlmann <oehhar@users.sourceforge.net> * combobox.tcl (ComboBox::getvalue et al) fixed bug: getvalue returned first apearence of current data instead of clicked index, which may not be the same if values is not unique. Additional variable _index(path) added to hold click index [Bug 1610965] reported by Martin Lemburg 2009-06-24 Harald Oehlmann <oehhar@users.sourceforge.net> * scrollframe.tcl (ScrollableFrame::create, ScrollableFrame::_resize, ScrollableFrame::_frameConfigure) fixed two issues: - Scrollbar activated even if not necessary Fix: update scrolling reagion on configure event of the frame - Disfunction if the frame got to small to be on the current view Fix: update scrolling reagion on map or unmap events [Patch 2807227] by Koen Danckaert * buttonbox.tcl (ButtonBox::_redraw) Bug: homogeneous button width not honored if button size changes after creation. -uniform gridding option is used if tcl version >= 8.3. [Patch 2807147] by Koen Danckaert 2009-06-16 Harald Oehlmann <oehhar@users.sourceforge.net> * combobox.tcl (ComboBox::_create_popup) In dropdown list, a vertical scrollbar was always shown if horizantal is used. ScrolledWindow is now called with "-managed 1". [Patch 2807160] by Koen Danckaert 2009-06-11 Harald Oehlmann <oehhar@users.sourceforge.net> * combobox.tcl removed \ before empty line (potential trap) [Bug 2804961] Andreas Kupries * dialog.html Documented -geometry option. [Bug 1634416] Erik Leunissen 2009-06-10 Harald Oehlmann <oehhar@users.sourceforge.net> * no.rc added norwegian translation file [Feature Request 2797153] provided by Lars Martin Hambro * passwddlg.tcl (PasswdDlg::_verifonpasswd) check for disabled password field and confirm directly. [Bug 1642050] (Calvin Bascom) Enter key did not confirm dialog when -passwdstate disabled. * combobox.tcl (ComboBox::_select) included [Patch 981545], but commented out - it works for me without it. 2009-06-10 Harald Oehlmann <oehhar@users.sourceforge.net> * dialog.html Added documentation for option -buttonwidth of Dialog [Bug 1668587] (Eric Leunissen) 2009-06-10 Harald Oehlmann <oehhar@users.sourceforge.net> * arrow.tcl initialised set _grab(oldstate) to "normal" to avoid error when there is a ArrowButton::_leave without corresponding ArrowButton::_enter [Bug 2762361] * entry.tcl (Entry::_path_command) Add "invoke" to the list of internally handled commands [Bug 2340320] (patch by relaxmike@users.sourceforge.net) * uitils.tcl (BWidget::place) BWidget::place used screen width instead window width. [Bug 1842346] (patch by Niels Gollesch ngoelles@users.sourceforge.net) * listbox.tcl (ListBox::_redraw_selection) Added check if redrawn item is on the to-delete list and thus does not exist any more as BWidget. [Bug 1752755] (legolas_a20@users.sourceforge.net] 2008-10-30 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (Tree::_node_name_rev): Return node names as they are input, and properly handle :: in node names. This changes internal node name reps, but should be transparent to the user, except for the result of [insert]. 2008-05-26 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (Tree::_redraw_selection): do not allow empty * listbox.tcl (ListBox::_redraw_selection): fill color as that creates a transparent item that doesn't return a bbox. This showed up on OS X/Aqua, where the listbox selectforeground defaults to empty. [AS Bug 77186 74923] 2007-10-31 Jeff Hobbs <jeffh@ActiveState.com> * lang/nl.rc (new): Dutch translation [Bug 1804469] * lang/hu.rc (new): Hungarian translation [Bug 1821842] * tree.tcl (Tree::insert): do node_name on parent arg [Bug 1046955] * listbox.tcl: speed up ListBox insertion significantly. [Bug 1472443] 2007-05-11 Jeff Hobbs <jeffh@ActiveState.com> * widget.tcl (Widget::theme): make sure Tk 8.5a6 is recognized as having the themed widgets 2006-12-20 J. Tang <tang@jtang.org> * util.tcl: fixed BWidget::write for widgets that require DynamicHelp. [bug 1518803] 2006-12-05 Andreas Kupries <andreask@activestate.com> * demo/demo.tcl (Demo::main): Removed the 'inscope' qualifier from the 'package require Bwidget'. The package system already forces loading and sourcing of package code in the global namespace, so this is bogus. 2006-11-13 J. Tang <tang@jtang.org> * panedw.tcl: if activator is set to line then its width is set to 3. --activator was an undocumented option; updated man page to make it documented. Thanks to Jos Decoster for pointing this out. 2006-11-10 J. Tang <tang@jtang.org> * widget.tcl: remove relative namespace resolution of variables, in anticipation of TIP 278. Widget should have been doing this anyways. [bug 1579744] * DragSite.html: noted that -draginitcmd can return an empty string to prevent a drag [bug 740499] * DropSite.html: fixed documentation with DropSite::register command [bug 740474] * combobox.tcl: allow autocomplete and autopost be enabled/disabled after the widget was created [bug 1588808]; fixed keysym in autopost binding [bug 1589111] * tree.tcl: fixed error with drag & drop's autoscroll [bug 1408494] * listbox.tcl: fixed error with drag & drop's autoscroll; fixed error when dropping at the end of the list * Added dynamic help to text tags (man page updated); fixed resize bug with scrollframes. Thanks to Jos Decoster for these patches. 2006-10-20 Jeff Hobbs <jeffh@ActiveState.com> * utils.tcl (BWidget::bindMouseWheel): do not make special mousewheel bindings if global ones exist (like from style::as) 2006-09-28 J. Tang <tang@jtang.org> **** BWIDGET 1.8.0 TAGGED **** * removed Makefile.in * font.tcl: correctly handle code path when user cancels dialog * passwd.tcl: fixed Dialog::enddialog error; fixed ordering error * pkgIndex.tcl, README.txt: updated to BWidget 1.8 * removed configure.in and aclocal.m4 * messagedlg.tcl: explicitly marked the 'Abort' button upon -type abortretryignore to be the default button [bug 970199] * Tree.html: documented [find] and [line] commands [bug 626819]; noted bug with %W binding [bug 1224203] * tree.tcl: added [bindArea] procedure; updated man page [patch 839066] * combobox.tcl: added [clearvalue] proc to explicitly clear a ComboBox value, updated man page [patch 780704] 2006-09-26 J. Tang <tang@jtang.org> * passwd.tcl: don't ignore -labelwidth when calculating label widths; return key moves through subwidgets like most login managers [patch 922877, with slight change] * font.tcl: add options to select font color and to disable font sizes; updated man pages [patch 1531199] * font.tcl: using arrow keys to browse font family / font size will cause an update to the shown sample font [patch 947109] * demo/basic.tcl: fixed Entry's enter command callback [bug 1400838] 2006-08-21 J. Tang <tang@jtang.org> * combobox.tcl: unpost after autoposting when another Tk window gets the focus; unpost upon hitting the enter key * scrollw.tcl: allow toggling of scrollbars [bug 1488712] * Tree.html: corrected documentation for Tree::opencmd (callback does not append the path to the tree to the command) [bug 1507713] * tree.tcl: disable keyboard navigation for empty trees [bug 1514855] * tree.tcl: changed '-drawcross allways' to be '-drawcross always'; updated documentation 2006-06-29 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl (StatusBar::remove): remove neighboring separator when removing the first item. [Bug 1512671] 2006-03-24 J. Tang <tang@jtang.org> * pkgIndex.tcl: removed bogus "ControlFrame" entry [bug 1429405] * MainFrame man page: fixed some typos on man page * mainframe.tcl: fixed status bar placement when it is re-shown after a [showstatusbar none] command [bug 1027568] 2006-03-23 J. Tang <tang@jtang.org> * dynhelp.tcl: if a widget's help balloon is being displayed when that widget is destroyed, also destroy the associated balloon [bug 1448424] * listbox.tcl: when deleting an item from the ListBox that has dynamic help text, also remove its entry from the help array [bug 1443461] 2006-02-10 J. Tang <tang@jtang.org> * ProgressDlg man page: note that caller must invoke [update], the progressbar will not do it automatically [bug 1105778] * progressbar.tcl: -maximum value must now be non-zero, else divide by 0 occurs [bug 1145523]; use double() calculations to prevent integer overflow with very large -maximum values [bug 900165] * PagesManager man page: clarified [add] behavior and default state [bug 1305988] 2006-02-08 J. Tang <tang@jtang.org> * combobox.tcl: allow -autocomplete with uppercase chars [bug 996569]; added -autopost option [patch 1359041] * dynamic help man page: added clarification to -variable 2006-01-25 J. Tang <tang@jtang.org> * buttonbox.tcl: fixed -homogeneous calculation [bug 1362899] 2005-11-01 Jeff Hobbs <jeffh@ActiveState.com> * color.tcl (SelectColor::menu): use native dialog for palette menu item where possible (and Widget::theme is used). 2005-10-31 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl: correct Widget::theme typos 2005-10-12 Jeff Hobbs <jeffh@ActiveState.com> * mainframe.tcl (MainFrame::configure): need to ignore -bg change check when themed. 2005-09-28 Jeff Hobbs <jeffh@ActiveState.com> * mainframe.tcl (MainFrame::_create_menubar): ignore -bg -bd opts when themed 2005-09-22 Jeff Hobbs <jeffh@ActiveState.com> * font.tcl (SelectFont::_getfont): fix tile compat to still set data(family) and data(size) in any case. 2005-09-19 Jeff Hobbs <jeffh@ActiveState.com> * mainframe.tcl: * font.tcl: remove tile compat options that aren't valid. 2005-08-23 Jeff Hobbs <jeffh@ActiveState.com> * mainframe.tcl: extend ttk theme awareness to subframes/separators 2005-08-10 Jeff Hobbs <jeffh@ActiveState.com> * mainframe.tcl (MainFrame::create): make ttk theme aware 2005-07-27 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl: if themed, use ttk::separator * scrollframe.tcl: if themed, use ttk::frame * font.tcl: if themed, use ttk::comboboxes and ttk::checkbuttons * widget.tcl: encapsulate all .#BWidget* hidden widgets into a single frame .#BWidget to clean up main '.' childspace. Add 'Widget::theme ?boolean?' that, if enabled, has BWidgets try to use some ttk themed widgets (*very* incomplete). * init.tcl (Widget::_opt_defaults): make a proc for opt defaults, recognize aqua as a platform 2005-02-25 Jeff Hobbs <jeffh@ActiveState.com> * lang/da.rc (new): Danish language file [Bug 1151534] (elhaard) 2005-01-25 Jeff Hobbs <jeffh@ActiveState.com> * notebook.tcl: reverted lester patch - too many bugs related to deleting and reinsertion of tabs. 2004-12-01 Jeff Hobbs <jeffh@ActiveState.com> * notebook.tcl: speed improvements via array hashing for many tabs (lester). 2004-10-09 Rolf Ade <pointsman@users.sourceforge.net> * mainframe.tcl: (MainFrame::_parse_accelerator) made accelerator Ctrl-f in -menu definitions work. [Bug 1043107] 2004-09-24 Jeff Hobbs <jeffh@ActiveState.com> * color.tcl: use toplevel instead of menu for dropdown color menu and do better focus/grab restoration. * utils.tcl (BWidget::RestoreFocusGrab,SetFocusGrab): add BWidget equivalents of what Tk uses for better stacked grab/focus mgmt. * dialog.tcl (Dialog::create): withdraw topleve immediately after creation. 2004-09-14 Jeff Hobbs <jeffh@ActiveState.com> * listbox.tcl: add FocusIn redirector to %W.c, add explicit -takefocus 0 to the frame parent. * widget.tcl (Widget::focusPrev): hack to avoid focus into direct parent when it is a megawidget. [Bug 765667] * notebook.tcl (NoteBook::_draw_page): adjust height for bottom drawn tabs. [Bug 988628] 2004-09-09 Jeff Hobbs <jeffh@ActiveState.com> * panelframe.tcl (new): new PanelFrame widget which creates a * pkgIndex.tcl: frame with boxed title area that accepts * Makefile.in: additional widgets. * BWman/contents.html: * BWman/navtree.html: * BWman/PanelFrame.html (new): * statusbar.tcl: improve init to use bwidget's automated arg passing for subwidgets. Simplify delete subcommand to call remove. * xpm2image.tcl (xpm-to-image): correctly recognize None with -nocase 2004-09-02 Jeff Hobbs <jeffh@ActiveState.com> * buttonbox.tcl, combobox.tcl: code safety fixes * dialog.tcl: default button width to -11 on Win8.4, 8 otherwise * color.tcl, font.tcl, messagedlg.tcl: * passwddlg.tcl, progressdlg.tcl: change dialogs to anchor buttons e * statusbar.tcl: better -bg handling (configure too), and tighten up spacing on resize control to place it flush bottom right 2004-09-01 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl: add -showseparator optional horizontal separator. 2004-08-31 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl: correct name of image for use on unix. Try to use of PNG image at each create (it just looks better). 2004-08-26 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (Tree::delete): call -selectcommand if we delete something that was selected. 2004-08-25 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl: correct use of PNG vs. GIF image. Don't abort creation of statusbar when gridded - just don't try to resize. Correct example to use label -width 1 2004-08-20 Jeff Hobbs <jeffh@ActiveState.com> * statusbar.tcl (new): Addition of a statusbar container widget * pkgIndex.tcl: with resize control * Makefile.in: * BWman/contents.html: * BWman/navtree.html: * BWman/StatusBar.html (new): 2004-05-12 Jeff Hobbs <jeffh@ActiveState.com> * font.tcl (SelectFont::create): don't hardcode -bd 2 when creating the style selectbuttons. * dynhelp.tcl (_show_help): account for OS X help style 2004-05-04 Jeff Hobbs <jeffh@ActiveState.com> * listbox.tcl (_keyboard_navigation): make sure you can see the item that you key navigate to. (aas) 2004-04-26 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (_update_nodes): align with _draw_nodes code, specifically correcting placement of cross on new nodes and anchor of changed window/image. 2004-04-23 Jeff Hobbs <jeffh@ActiveState.com> * listbox.tcl (create): don't force -highlightthickness 1 as it prevents the user changing it on creation. (_draw_item): pass more cached info from _redraw_items for speed. (_redraw_selection): correct drawing of selfill for items that extend beyond the width of the window. 2004-04-22 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (edit): correct inversion of verifycmd emptiness test. * listbox.tcl: correct eval/after/lists usage. (_redraw_listbox): call _update_select_fill on redraw, otherwise the insert of items causes wonkiness. (_redraw_items): call update idle after changing cursor. (create): Insert $path into the canvas bindings, so that anyone binding directly onto the widget will see their bindings activated when the canvas has focus. Add slightly modified up/down bindings to the canvas, in case it gets the focus (like with -autofocus). 2004-04-21 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (_draw_subnodes): Adjust the drawing of the line to the first root node to start at the vertical point (not go up). * entry.tcl, arrow.tcl, combobox.tcl: better space/list handling * entry.tcl: make the icursor not appear for non-editable and/or state disabled comboboxes. 2004-03-08 Joe English <jenglish@users.sourceforge.net> * init.tcl: (bugfix) Use <<PrevWindow>> virtual event instead of <Shift-Tab> event for back-tab binding. 2004-02-07 Jeff Hobbs <jeffh@ActiveState.com> * progressbar.tcl (ProgressBar::_modify): convert rect coords to ints to prevent left-over lines that are likely due to a bug in core Tk related to fractional coord refresh. 2004-02-03 Jeff Hobbs <jeffh@ActiveState.com> * scrollw.tcl (ScrolledWindow::create): correctly set -relief and -bd at creation time. [Bug #873666] * init.tcl: don't modify *Listbox.background and *Button.padY options - leave core widgets alone. * mainframe.tcl (MainFrame::_create_menubar): set the bg for menus only on unix (otherwise disturbs menu native L&F) Correct some eval/list issues. * BWman/MainFrame.html: * mainframe.tcl (MainFrame::_create_entries): correct 'cascade' spelling, but support old 'cascad' as well. 2004-01-28 Reinhard Max <max@suse.de> * configure.in: bumped to v1.7. This should have happened before releasing 1.7.0. * Makefile.in: fixed support for DESTDIR. 2004-01-05 Damon Courtney <damon@unreality.com> * init.tcl: Added a binding to the Tk spinbox to handle traversal as loading BWidgets seems to screw up the default handling for Tk. [Bug #867604] * utils.tcl: Fixed a bug that would cause some geometry calculations in BWidget::place to behave incorrectly. This would occasionally make it appear as though a drawn dialog would freeze the application. [Bug #868315] 2003-12-18 Bob Techentin <techentin@sourceforge.net> **** BWIDGET 1.7.0 TAGGED **** * README.txt: Changed revision to 1.7.0. Note that 1.7.0 does not include 2003-11-26 mod to notebook.tcl. 2003-11-26 Jeff Hobbs <jeffh@ActiveState.com> * notebook.tcl (NoteBook::bindtabs): correct tab name returned. (groth) 2003-11-17 Jeff Hobbs <jeffh@ActiveState.com> * entry.tcl (Entry::create): add missing line continuation. [Patch #843932] (oehlmann) 2003-11-10 Damon Courtney <damon@unreality.com> * entry.tcl: Use a button widget for -disabled options if we're using 8.3 [Bug 839469] 2003-11-05 Damon Courtney <damon@unreality.com> * combobox.tcl: Fixed dropdown listbox selection for standard Tk listbox [Bug 831496]. 2003-11-05 Jeff Hobbs <jeffh@ActiveState.com> * scrollview.tcl (ScrollView::_set_view): correct :canvas to renamed :cmd. 2003-10-30 Jeff Hobbs <jeffh@ActiveState.com> * scrollw.tcl (ScrolledWindow::setwidget): check that the old widget associated still exists before unconfiguring it. [Bug #833034] 2003-10-27 Damon Courtney <damon@unreality.com> * combobox.tcl, listbox.tcl: Fixed keyboard navigation in the combobox drop down [Bug 831496]. * listbox.tcl: Added curselection subcommand to mimic Tk listbox behavior. Added keyboard navigation to the listbox. * widget.tcl: Added Widget::exists command to return whether a widget is a BWidget (based on whether it exists in the _class array). Widget::destroy now properly unsets the widget's variable in the _class array. 2003-10-27 Joe English <jenglish@users.sourceforge.net> * DragSite.html, DropSite.html: Fix markup errors [Bug #740484] 2003-10-20 Damon Courtney <damon@unreality.com> * arrow.tcl, bitmap.tcl, button.tcl, buttonbox.tcl, color.tcl, * combobox.tcl, dialog.tcl, dragsite.tcl, dropsite.tcl, entry.tcl * font.tcl, label.tcl, labelentry.tcl, labelframe.tcl, listbox.tcl * mainframe.tcl, messagedlg.tcl, notebook.tcl, pagesmgr.tcl * panedw.tcl, passwddlg.tcl, progressbar.tcl, progressdlg.tcl * scrollframe.tcl, scrollview.tcl, scrollw.tcl, separator.tcl * spinbox.tcl, titleframe.tcl, tree.tcl, utils.tcl, widget.tcl * xpm2image.tcl: Revamp again to let core Widget commands handle most of the esoteric work of creating and destroying widgets properly in the BWidget environment. The command Widget::define defines a class, its filename and a list of classes which it uses. This command handles creating the command to create new widgets, creates a ::use command for the class and calls the ::use command for each class included. The command Widget::create does the renaming of the widget to $path:cmd and creates the proc to redirect the widget commands. Widget::destroy now does the rename $path "" that almost all widgets do. * button.tcl: Added a -state option to configure the state of the entire box at once. Added new insert and delete subcommands. Added an after cancel to stop button repeat upon release. [Bug 697022] * combobox.tcl: Added -bwlistbox, -listboxwidth and -hottrack options. -images option already existed, but now it actually does something. Added getlistbox, get, icursor, post and unpost subcommands. * dynhelp.tcl: Added add subcommand to replace the (now) deprecated register command. The new command adds for a lot more flexibility in applying dynamic help. Help popup now comes up -topmost 1 on Windows if available. * entry.tcl: Added -disabledbackground option so that the BWidget entry more closely resembles the standard Tk entry. [Bug 638236]. * init.tcl: Moved Widget::traverseTo into widget.tcl. * label.tcl: Renamed BWLabel class to just Label. * listbox.tcl: Added a default -dropcmd so that if -dragenabled and -dropenabled are true, drag-and-drop within the same widget is possible without any other options. Added -autofocus option to specify that clicking within the listbox should draw the focus in order to handle mouse wheel events. Added -selectfill option for drawing a full selection rectangle around selected items instead of just around the item. Added getcanvas subcommand. [Bug 436762]. bindImage and bindText now map %W to $path in order to get an accurate path in events. This can probably be fixed better when we have more control over event parameters. [Bug 607745] Added mouse wheel bindings by default. Added <<ListboxSelect>> event when selection changes. * mainframe.tcl: Fixed bug for adding CTRL-F items to a mainframe [Bug 784269] * messagedlg.tcl: Added -buttonwidth option. * notebook.tcl: Added dynamic help to tabs. Added -tabpady option to specify the padding between the text and the tab. Notebooks now handle multi-line text properly. [Bug 565284] * scrollview.tcl: Rewritten to use a variable per path instead of a big array. * tree.tcl: Added -anchor option to nodes to specify the anchor for an image or window when displayed. Added -crossopenimage, -crosscloseimage, -crossopenbitmap and -crossclosebitmap options to change the open / close cross. Added mouse wheel bindings by default. Added toggle subcommand to toggle a single tree node. Added <<TreeSelect>> event when selection changes. The characters "& | ^ !" are all converted to | silently in node names. This is to avoid errors because these characters are special to the canvas widget. [Bug 746960] bindImage and bindText now map %W to $path in order to get an accurate path in events. This can probably be fixed better when we have more control over event parameters. [Bug 607745] * utils.tcl: Added BWidget::wrongNumArgsString command to return a standard wrong # args error string. Added BWidget::classes command that returns a list of all classes required by a given class. Added BWidget::inuse command to determine if a given class is inuse. Added BWidget::library command to return a body of code that can be saved into a project or other code based on the given classes. When called with a list of classes, all the classes and code necessary to use those classes is returned in a large string which can then be written out to a file. Added BWidget::write command to write to a given file the current set of classes that are in use. Added BWidget::bindMouseWheel command to setup default mouse bindings on a given widget. * widget.tcl: Added a new option type 'Padding' which will accept the standard padding arguments in Tcl 8.4+. Added Widget::define command to define a new BWidget class. Added Widget::create command to create a BWidget properly. Widget::destroy now attempts to delete a widget command created through Widget::create. Added Widget::options command to return the current options of a given widget in a style that can be used to serialize a widget. Added Widget::getOption command to get options based on children having the same option. * wizard.tcl: Added new Wizard widget. 2003-10-17 Jeff Hobbs <jeffh@ActiveState.com> * arrow.tcl, bitmap.tcl, button.tcl, buttonbox.tcl, color.tcl, * combobox.tcl, dialog.tcl, dragsite.tcl, dropsite.tcl, entry.tcl * font.tcl, label.tcl, labelentry.tcl, labelframe.tcl, listbox.tcl * mainframe.tcl, messagedlg.tcl, notebook.tcl, pagesmgr.tcl * panedw.tcl, passwddlg.tcl, progressbar.tcl, progressdlg.tcl * scrollframe.tcl, scrollview.tcl, scrollw.tcl, separator.tcl * spinbox.tcl, titleframe.tcl, tree.tcl, utils.tcl, widget.tcl * xpm2image.tcl: major revamp to reduce incorrect use of eval and other list-safetiness evils. Also change !strcomp to streq. 2003-08-06 Jeff Hobbs <jeffh@ActiveState.com> * listbox.tcl: Correct Listbox selection drawing [Bug #781652] 2003-07-17 Joe English <jenglish@users.sourceforge.net> * init.tcl, combobox.tcl: Fix for [Bug 720032] "BWidget breaks Tk entry behaviour". Highlight the entry in a <<TraverseIn>> binding, instead of doing so on every <FocusIn> event. Change the global <Tab> and <Shift-Tab> bindings to generate <<TraverseIn>> and <<TraverseOut>> events. 2003-07-17 Jeff Hobbs <jeffh@ActiveState.com> * notebook.tcl: Use list with eval for safety. Use lsearch -exact instead of default -glob in all uses. * listbox.tcl (_multiple_select): correct shift-selection when selectmode is multiple. [Bug 653266] Use lsearch -exact instead of default -glob in all uses. Use list with eval for safety. * BWman/ScrolledWindow.html: clarify management of embedded widget. 2003-06-23 Damon Courtney <damon@unreality.com> * combobox.tcl: Added a little better handling of keys in the auto-complete. 2003-06-06 Damon Courtney <damon@unreality.com> * combobox.tcl: Added a rudimentary auto-complete function with option (-autocomplete) that is turned off by default. Over time, I'm sure this function can be improved, but I think it works pretty well for now. * BWman/ComboBox.tcl: Added documentation for -autocomplete. 2003-06-05 Damon Courtney <damon@unreality.com> * listbox.tcl: Liberal use of list where appropriate to make the code safe for space-containing node names. 2003-05-23 Bob Techentin <techentin@sourceforge.net> **** BWIDGET 1.6.0 TAGGED **** * README.txt: 2003-05-18 Jeff Hobbs <jeffh@ActiveState.com> * progressbar.tcl: correctly handle progressbar being quickly created and deleted by deleting afters and checking var existence. 2003-05-18 Joe English <jenglish@users.sourceforge.net> * widget.tcl (Widget::focusOK): Don't assume that '-editable' option is always 1 or 0 for all widgets. [Bug 710658] 2003-05-14 Jeff Hobbs <jeffh@ActiveState.com> * demo/tree.tcl: make the tree scrollview make sense in demo. [Bug 684462] * notebook.tcl: ensure that bd is min 1 at all times. [Bug 688227] Correct use of eval with list. * tree.tcl: correct node lsearch'ing to use -exact to allow for [] containing nodes [Bug 628041] (decoster) 2003-05-07 Jeff Hobbs <jeffh@ActiveState.com> * dynhelp.tcl (DynamicHelp::_motion_balloon): correctly listify after delayed _show_help callback. 2003-05-06 Jeff Hobbs <jeffh@ActiveState.com> * scrollw.tcl (ScrolledWindow::setwidget): remove any existing widget before setting the next. 2003-05-01 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl (Tree::configure, Tree::_draw_node): add a full-width box underneath the text and image/window that will react to the node binding if -selectfill is true. It is an empty box that is overly wide, but it could be improved to resize on Configure to just the window width and replace the sel box. 2003-04-23 Jeff Hobbs <jeffh@ActiveState.com> * tree.tcl: liberal use of list where appropriate to make the code safe for space-containing node names. Make use of string equal instead of !string compare. (Tree::_redraw_selection): correct -selectfill to include the image, in any, in the bbox calculation since it may be larger. 2003-04-15 Damon Courtney <damon@unreality.com> * listbox.tcl * tree.tcl: Added a #auto substitution for inserting new items into a tree or listbox. * BWman/ListBox.html * BWman/Tree.html: Added documentation for #auto substitution. 2003-04-14 Jeff Hobbs <jeffh@ActiveState.com> * utils.tcl (BWidget::focus): add optional refocus arg * combobox.tcl: make droplist use solid 1-pixel relief more in accordance with Windows style. Set topmost attribute on droplist. Add bindings that unmap the droplist if we lose focus to another application (where [focus] == ""), without refocusing to the entry. 2003-04-11 Jeff Hobbs <jeffh@ActiveState.com> * combobox.tcl (ComboBox::_expand): add tab expansion behavior when -expand tab is specified (ComboBox::_focus_in): autohighlight full contents only when no existing selection exists. [Bug #720024] * BWman/ComboBox.html: doc -expand none|tab 2003-03-12 Damon Courtney <damon@unreality.com> * listbox.tcl: Added dynamic help support to listbox items. * tree.tcl: Fixed a little inconsistency in the tree dynamic help. We don't need to save the whole path in the help array, just the node. 2003-02-25 Jeff Hobbs <jeffh@ActiveState.com> * scrollw.tcl: add lock around grid remove scrollbar to prevent infinite loop in small window situations. (kienzle) * pkgIndex.tcl: * configure.in: bumped to v1.6 * scrollw.tcl: complete rewrite of ScrolledWindow widget to address infinite loop scrollbar problems. This one is much simpler and does not suffer the infinite loop. There still seems to be an issue with shrinking smaller than one scrollbar width / height in size, but that's not common (nor fatal). Addresses [Patch #671821, #520903] [Bug #472718, #564691] This may introduce new incompatabilities, but it does work as expected for noted bugs and in the demos. * widget.tcl: code cleanup * scrollframe.tcl: code cleanup 2003-02-24 Jeff Hobbs <jeffh@ActiveState.com> * panedw.tcl (_realize): only allow _realize to be called once the Configure binding has triggered once. [Bug #613134] [Patch #63500] (decoster) 2003-02-17 Jeff Hobbs <jeffh@ActiveState.com> * font.tcl: comment out the adding of default style bits for bold and italic. The allows setting the font to something like "Courier 8", clicking B on and off and getting "Courier 8" back again (otherwise gave "Courier 8 normal roman"). 2003-02-08 Damon Courtney <damon@unreality.com> * BWman/SelectColor.html * color.tcl: Cleaned up some of the documentation of SelectColor and made it actually work like the documentation says it does. * BWman/DynamicHelp.html * dynhelp.tcl: Added -topbackground, -padx and -pady options to allow a little more flexibility in the look-and-feel of balloons. Added the ability to bind dynamic help to individual items or tags on a canvas. * BWman/Tree.html * tree.tcl: Added -padx and -deltax options to individual nodes within a tree. Each option defaults to -1, meaning to take its value from the global option of the same name. Added dynamic help to nodes within a tree. Adds the following options: -helptext, -helptype and -helpvar to each node. * BWman/BWidget.html * utils.tcl: Added BWidget::badOptionString utility to return a standard error string when a given option doesn't match a list. * BWman/Widget.html * widget.tcl: Added Widget::getVariable proc to create a reference to a variable relative to the given widget path. 2003-01-26 Damon Courtney <damon@unreality.com> * BWman/DynamicHelp.html: * dynhelp.tcl: Added -state option to disable help balloons on a global scale. * BWman/Tree.html: * tree.tcl: Added -crossfill option to allow the + / - bitmap to be filled with a different color than the connecting node lines. -linesfill is now accurate in its help entry and only adjusts the foreground color of the lines between the nodes. 2003-01-24 Joe English <jenglish@users.sourceforge.net> * tree.tcl (Tree::delete, Tree::_subdelete): remove all deleted nodes from the the selection [Bug #621178]. 2003-01-17 Pat Thoyts <patthoyts@users.sourceforge.net> * labelentry.tcl: fixed -textvariable option [bug #649383] 2002-10-14 Jeff Hobbs <jeffh@ActiveState.com> * pkgIndex.tcl: * configure.in: bump version to 1.5 * button.tcl: remove -repeatdelay and -repeatinterval for 8.4 to allow Button to override them. [Bug #620103] * combobox.tcl: make -entrybg also control the listbox background. [Bug #519189] (chevreux) * tree.tcl (_see): change to always show left edge of requested item. [Patch #556077] (english) [NOTE: also included Patch #621331 "Allow delete of selected Tree nodes"] * dynhelp.tcl: allow variable and balloon help simultaneously. [Patch #567982] (decoster) * BWman/LabelFrame.html: * labelframe.tcl: allow -bitmap -image and -textvariable options of the BWLabel component of a LabelFrame. [Patch #620753] (decoster) * widget.tcl (_get_tkwidget_options): withdraw toplevel if it is the TkResource base widget. [Patch #620754] (decoster) * tree.tcl (delete): correct tree deletion with selected nodes. [Patch #621331] (decoster) * progressbar.tcl (_modify): use updated idletasks instead of update. [Patch #622927] (decoster) 2002-09-25 Jeff Hobbs <jeffh@ActiveState.com> * Makefile.in: better DESTDIR/libdir support (steffen) 2002-09-11 Jeff Hobbs <jeffh@ActiveState.com> * color.tcl (SelectColor::menu): added tkwait and update to make sure that the grab doesn't fail on Unix. * listbox.tcl: corrected multiple selectmode bindings. [Patch #483838, Bug #594853] (decoster) 2002-08-23 Andreas Kupries <andreas_kupries@users.sourceforge.net> * tree.tcl: Modified subcommand 'includes' of the method 'selection to properly extract its argument. ... Revamped the whole subcommand to properly extract and check its arguments. (create) Added Control-Button-1 bindings to allow toggling the selection of a node. I will do no bindings for shift-selecting and/or drag-selecting ranges. To complex for me right now. Moved the code executing the -selectcommand callback to an internal procedure, and added calls to that procedure to all subcommands which change the selection. This fixes SF Bwidget Bug #547245. * BWman/Tree.html: Documented the 'includes' and 'range' subcommands of the method 'selection' of tree widgets. Documented the node option '-selectable'. Documented that the subcommands extending or setting the selection silently ignore unselectable nodes. Documented new 'toggle' subcommand of method 'selection'. Documented option --slectcommand'. Fixed bogus table html in option lists. 2002-06-04 Jeff Hobbs <jeffh@ActiveState.com> **** BWIDGET 1.4.1 TAGGED **** * README.txt: * configure.in: * pkgIndex.tcl: up'ed version to 1.4.1 * listbox.tcl: corrected use of 'end' as move index. [Bug #561391] * buttonbox.tcl: * tree.tcl: force frame -padx/-pady to 0 to handle 8.4+ frame padding options. [Bug #545119] * scrollframe.tcl: corrected scrollregion configuration on Configure of frame to use full width/height of canvas when the canvas is larger. This ensures that scrolling "anchors" properly to topleft. * dialog.tcl: prevent dialog from freezing on Windows with tkwait visibility on withdrawn toplevels. [Patch #521386] (chevreux) * font.tcl: reworked loadfont to not sort font names unless requested. [Patch #524353] (kienzle, hobbs) * panedw.tcl: corrected handling of weighted panes following a Configure event. [Patch #513320] (decoster) * progressbar.tcl: Fixed display of vertical progressbar. [Patch #561403] 2002-05-29 Andreas Kupries <andreas_kupries@users.sourceforge.net> * combobox.tcl: Changed relief of popup list to ridge, for Win* platforms. 2002-05-09 Andreas Kupries <andreas_kupries@users.sourceforge.net> * dynhelp.tcl: Accepted patch for bug 528929. Reported by <bach@users.sourceforge.net>, patch also by him. 2002-04-25 Andreas Kupries <andreas_kupries@users.sourceforge.net> * notebook.tcl: Accepted patch for bug #532246, fixing the appearance of the tabs so that text is always visible completely. 2002-01-26 Pat Thoyts <patthoyts@users.sourceforge.net> * utils.tcl: Modified BWidget::place to support multiple screens under Windows. Better support would require Tk modifications. * demo/tree.tcl: Fixed for starting on secondary monitor under windows. * BWMan/BWidget.html: added documentation for BWidget::place. 2002-01-22 Jeff Hobbs <jeffh@ActiveState.com> **** BWidget 1.4.0 tagged **** * widget.tcl: added Color as an optional type, with _test_color test. [RFE #443124]. 2002-01-15 Jeff Hobbs <jeffh@ActiveState.com> * BWman/ComboBox.html: removed reference to label options that were removed when the LabelFrame was dropped. [Bug #477130] * listbox.tcl: allowed drop handler to work in empty listbox. [Bug #456883] * mainframe.tcl: correct unprotected eval calls. [Patch #501210] (chevreux) 2001-12-28 Jeff Hobbs <jeffh@ActiveState.com> * BWman/Dialog.html: * dialog.tcl: Added '-transient' and '-place' flags. [Patch #483838] (decoster) * BWman/Tree.html: * tree.tcl: Added a 'recursive' argument to 'Tree::opentree' and 'Tree::closetree'. [Patch #483838] (decoster) * BWman/ProgressBar.html: * progressbar.tcl: Added new type 'nonincremental_infinite' and modified movement of progressbar when in 'infinite' or 'nonincremental_infinite' mode. The 'nonincremental_infinite' can be used when a certain process monitored by a ProgressBar returns a total count and not an increment count. [Patch #483838] (decoster) * BWman/PanedWindow.html: * panedw.tcl: Added '-weights' flag with possible value 'extra' or 'available'. Since BWidget-1.3.1, the meaning of the '-weight' flag for the 'PanedWindow::add' command was changed. This made it difficult to create a layout where the panes occupy a certain amount of the screen. When using the '-weights extra' flag when creating a PanedWindow widget, the >=1.3.1 behavior is used: the weights for the different panes are only used for extra space. When using the '-weights available' flag, the weights for the different panes are used to set the size of each panes relative to the total available space. [Patch #483838] (decoster) * BWman/ListBox.html: * listbox.tcl: Added '-selectmode' flag and 2 possible select-modes: single and multiple. [Patch #483838] (decoster) * widget.tcl: Select element 4 (was 3) from the config-options to get value from optiondb. [Patch #483838] (decoster) * utils.tcl: added else case to place is called with location different from 'at' and 'center' and without a parent. [Patch #484123] (decoster) * mainframe.tcl: added options -menubarfont, -menuentryfont and -statusbarfont at creation time of the widget as well as subsequent configures. [Patch #479935] (chevreux) * listbox.tcl: added multipleinsert command to allow faster inserts of multiple items. [Patch #458446] (chevreux) * widget.tcl: added Widget::copyinit. [Patch #458446] (chevreux) * BWman/NoteBook.html: * notebook.tcl: added options for enhanced tab shape in notebooks. [Patch #402466] (haneef) * configure.in: * pkgIndex.tcl: * README.txt: bumped version to 1.4.0 (not released) * mainframe.tcl (_create_menubar): start tagstate initially on. [Patch #470273] (chevreux) (_parse_accelerator): improve F* function key accelerator support. [Patch #444172] (venski) 2001-10-14 Jeff Hobbs <jeffh@ActiveState.com> * pagesmgr.tcl: reverted fix of 2001-10-11 - it was bogus. 2001-10-11 Jeff Hobbs <jeffh@ActiveState.com> * pagesmgr.tcl: allowed the ability to specify page by name, not just number. 2001-09-11 Andreas Kupries <andreas_kupries@users.sourceforge.net> * notebook.tcl: Removed 'Canvas' from the list of bindtags for the internal canvas to prevent interference from application specific bindings with our special widget. [459033]. 2001-09-06 Andreas Kupries <andreas_kupries@users.sourceforge.net> * passwddlg.tcl: Accepted change by Bastien Chevreux <bach@users.sourceforge.net> adding a -logineditable option to the password dialog. [436340]. 2001-09-05 Andreas Kupries <andreas_kupries@users.sourceforge.net> * panedw.tcl: Added option -activator to allow user to choose sash activator. Reduced minimum allowed sash width. [442474]. Request made by Bastien Chevreux <bach@users.sourceforge.net>. * label.tcl: Corrected typo in BWlabel::configure [454505], report and fix by Bastien Chevreux <bach@users.sourceforge.net>. * arrow.tcl: Changed containing frame to be more invisible (borderwidth 0). Fixes [458301], by Georgios Petasis <petasis@users.sourceforge.net>. 2001-08-08 Andreas Kupries <andreas_kupries@users.sourceforge.net> * tree.tcl (Tree::_keynav): Added code to call the open and close commands when the open-status of a node is toggled with the space bar. Bug [449284]. * color.tcl: Added the missing definition of the main 'SelectColor' procedure. This prevented users from creating these widgets in the documented way. Bug [449276]. 2001-06-21 eric melski <ericm@ajubasolutions.com> * tree.tcl: Corrected keyboard navigation so that open/close commands are invoked when right/left arrows are used to open/close nodes, patch from [Bug #435097]. Also corrected keyboard navigation on right arrow press; previously only opened closed nodes that had children, but should always open nodes, regardless of whether it has children. 2001-06-11 Jeff Hobbs <jeffh@ActiveState.com> * pkgIndex.tcl: bumped version to 1.3.1 and added Tk 8.1.1 package require as Tcl 8.1.1 is needed in certain core areas for the new string methods. * mainframe.tcl: corrected state interpretation. It doesn't do exact argument matching, but it is consistent with the rest of BWidget. [Bug #224476] * demo/demo.tcl: fixed demo script to run when called from another directory * messagedlg.tcl: corrected winfo exists call * listbox.tcl: fixed string compare call * combobox.tcl: added package require Tk 8.3. * passwddlg.tcl: * xpm2image.tcl: * mainframe.tcl: * panedw.tcl: * utils.tcl: * entry.tcl: * dynhelp.tcl: * dragsite.tcl: * color.tcl: added braces to expr where appropriate 2000-10-31 Dan Kuchler <kuchler@ajubasolutions.com> * combobox.tcl: Added the '-exact' option to the 'lsearch' commands in the combobox code so that the correct index of items will be returned even when there are glob/regexp characters. 2000-10-10 Dan Kuchler <kuchler@ajubasolutions.com> * dynhelp.tcl: Added the '-screen' option to the toplevel that is created to display the help text to fix a bug reported by Tupone Alfredo. 2000-10-01 Eric Melski <ericm@ajubasolutions.com> * notebook.tcl: Fixed typo in _draw_page that incorrectly placed images on tabs. 2000-09-17 Eric Melski <ericm@ajubasolutions.com> * widget.tcl (_test_boolean): Altered to return strictly 0 or 1 (for false and true, respectively), rather than allowing the string booleans (false, true, off, on, etc). 2000-09-07 Sven Delmas <sven@scriptics.com> * mainframe.tcl: Fixed the typo of Alt (Atl) as reported in bug # 6079. 2000-09-05 Eric Melski <ericm@ajubasolutions.com> * label.tcl: Corrected bindtags for BWidgets Label components: primary component widget now includes the megawidget pathname in its bindtags list, so that bindings on the megawidget pathname are applied properly. 2000-08-10 Eric Melski <ericm@ajubasolutions.com> * widget.tcl: Corrected a problem caused by the destruction of the special .#BWidget* widgets, which are used by BWidgets for some option value validations; formerly, if these were destroyed, it could confuse the BWidgets system's internal state, and creating BWidgets after destroying these helper widgets would throw an error. 2000-06-14 Dan Kuchler <kuchler@scriptics.com> * dialog.tcl * dropsite.tcl * dynhelp.tcl * scrollview.tcl: Replaced several catch {unset varname} calls with if {[info exists varname]} {unset varname}. This avoids using the catch, and also prevents the ::errorInfo corruption that was happening in BWidgets. 2000-05-14 Dan Kuchler <kuchler@scriptics.com> * tree.tcl: Fixed a typing error in the Tree::find procedure. The procedure wouldn't work because there was a 'llengh' where there should have been a 'llength'. 2000-05-08 Dan Kuchler <kuchler@scriptics.com> * titleframe.tcl: Added a '-state' flag that is associated to the state of the label. Now that labels can be disabled (in 8.3 and beyond) this allows for the titleframe to have a disabled appearence. 2000-05-02 Eric Melski <ericm@scriptics.com> * tree.tcl: Did some fancy focus footwork [Bug: 4491]. Now you can do this: "Tree .t ; bind .t <Button-1> foo", and it will do the right thing. This will enable the use of proper focus-on-mouse-click bindings for trees, which in turn will fix the focus problem described in 4491. In addition, I added a binding to the canvas widget in the tree that redirects focus when it leaves the canvas and goes to the frame, just in case. * dialog.tcl: Added a -geometry option, to allow the specification of geometry for the dialog. No particular care is taken to validate the geometry string, so if it is bogus, you lose. [RFE: 5188]. 2000-04-27 Eric Melski <ericm@scriptics.com> * entry.tcl: Added smarts to handle Copy for non-editable entries (it should be allowed, but was not previously) [Bug: 3755]. * notebook.tcl: Small tweaks for placement of images on tabs. * combobox.tcl: Added code to ensure that non-editable (but enabled) comboboxes could still be tabbed in to. 2000-04-26 Dan Kuchler <kuchler@scriptics.com> * button.tcl: Fixed the bindings that get setup on buttons with an underline specified to be case insensitive (i.e if 'A' or 'a' was the underline character, Alt-A and Alt-a would both be bound to the button. 2000-03-29 Sven Delmas <sven@scriptics.com> * tree.tcl: Added protection for the left arrow key click in case we are already at the root node. This used to throw a Tcl error (fixes bug # 4619). 2000-03-20 Eric Melski <ericm@scriptics.com> * progressbar.tcl: (configure) Added test for change to -maximum value, so that bar is redrawn if maximum changes. [Bug: 4399]. * BWman/SpinBox.html: Removed references to -label* options. * demo/select.tcl: Removed use of -label* options on ComboBox and SpinBox. [Bug: 4394]. 2000-03-14 Eric Melski <ericm@scriptics.com> * button.tcl: (configure) replaced several hasChanged calls with one hasChangedX call. * dynhelp.tcl: (sethelp) replaced several hasChanged calls with one hasChangedX call. * entry.tcl: Replaced stack of hasChanged calls with one hasChangedX (in configure); replaced a couple cget's with getMegawidgetOption's. * spinbox.tcl: Updated _test_options to use setMegawidgetOption, and to only do that if it has to, instead of always doing it. * tree.tcl: Worked on itemcget; instead of upvar'ing the one-time-use variable, just refer to it directly. * widget.tcl: One problem with [set ${class}::${path}:opt($option)] -- if path contains "foo(foo)", the command will choke. Removed that particular micro-optimization. Added setMegawidgetOption to compliment getMegawidgetOption; extended hasChangedX to accept multiple options to check. This allows us to compress stacks of hasChanged calls into a single call (so there's a single function call, and a single upvar...). 2000-03-13 Eric Melski <ericm@scriptics.com> * combobox.tcl: Tweaked bg/background options so that button didn't pick up entry background. * widget.tcl: Removed dead code; micro-optimizations to initFromODB. * tree.tcl: Added option for default -fill of tree nodes on windows. * notebook.tcl: Removed commented code. * button.tcl: * tree.tcl: * spinbox.tcl: * entry.tcl: * dropsite.tcl: * dragsite.tcl: * arrow.tcl: Replaced selected cget/getoption calls with getMegawidgetOption calls. * combobox.tcl: Removed LabelFrame from ComboBox (30% faster). * widget.tcl: Added getMegawidgetOption function, which allows direct access to megawidget-specific options (those that do not map to a component widget option). This is dangerous, because it bypasses some checks, and it will only work with options that are specific to the megawidget. However, it is much faster, and enables some functions (like visiblenodes) to be much faster. * tree.tcl: Reworked visiblenodes function to do a tree walk to find visible nodes. This is faster and more correct than the previous implementation, which queried all the nodes in the tree for their open bit. 2000-03-10 Eric Melski <ericm@scriptics.com> * widget.tcl: Replaced an upvar with a direct reference to the variable in initFromODB. * dynhelp.tcl: Changed sethelp function to use new hasChangedX function instead of hasChanged, which avoids an unneeded upvar, for a little better speed. * button.tcl: Changed to parseArgs/initFromODB format for a small (25%) speedup in creation time. 2000-03-10 Sven Delmas <sven@scriptics.com> * tree.tcl: Changed the allnodes procedure to visiblenodes, and also the mechanism of retrieving those nodes. This took care of the previously required update. 2000-03-09 Eric Melski <ericm@scriptics.com> * entry.tcl: Added code to re-sync the -text option with the contents of the entry widget before doing configuration; this fixes [Bug: 4304]. 2000-03-09 Sven Delmas <sven@scriptics.com> * tree.tcl: Disabled the update before the find withtag in the allnodes procedure. The nodes are apparently created delayed, so before this procedure is called, the program has to do an update. I don't do this in the procedure anymore, because it caused multiple updates, making the app slower. 2000-03-08 Sven Delmas <sven@scriptics.com> * tree.tcl: The new allnodes procedure was not handling the "current" tag correctly. This is now stripped of. 2000-03-07 Eric Melski <ericm@scriptics.com> * button.tcl: Added check for -state flag, to initialize it properly. * entry.tcl: Changed to parseArgs/initFromODB format; added check for -text flag to initialize it properly. * labelentry.tcl: Changed to use parseArgs/initFromODB format. 2000-03-03 Eric Melski <ericm@scriptics.com> * spinbox.tcl: Added a call in setvalue to scan the current value into a float to trim out any 0 padding on the number (otherwise the zero's make it look like octal to tcl, which chokes on numbers > 8) 2000-03-07 Sven Delmas <sven@scriptics.com> * passwddlg.tcl: Reenabled the <Return> binding to activate the ok button. * dragsite.tcl: I added an extra protection into the _begin_drag procedure to guard against a motion event that (sometimes) arrives before the press event. This fixes bug # 4324. 2000-03-03 Eric Melski <ericm@scriptics.com> * spinbox.tcl: Removed LabelFrame from SpinBox (BACKWARDS INCOMPATIBLE) to speed creation; updated configure proc to use hasChangedX instead of hasChanged, as it didn't really need the values of the options it was checking. 2000-03-01 Eric Melski <ericm@scriptics.com> * spinbox.tcl: Changed bindings to be on class SpinBox instead of BwSpinBox, and added class SpinBoxEntry to the bindtags of the SpinBox entry component. * configure.in: * pkgIndex.tcl: Bumped version to 1.3.0. * tree.tcl: Changed focus redirect to use {after idle} to avoid focus loops. * label.tcl: Added -bd 0 -highlight... etc to wrapper frame; moved class bindings to the frame instead of the component label. * utils.tcl: Added helper function BWidget::refocus, to handle focus redirection calls. * spinbox.tcl: Changed focus redirect to use {after idle} to avoid focus loops. * combobox.tcl: Changed init to parseArgs/initFromODB style; changed focus redirect to use {after idle} to avoid focus loops. 2000-02-29 Eric Melski <ericm@scriptics.com> * widget.tcl: Added bits to handle $path#subclass_that_inherits_from_other_bw_class megawidget names. * passwddlg.tcl: * progressdlg.tcl: * progressbar.tcl: Changed init to parseArgs/initFromODB style. * pkgIndex.tcl: Changed Label -> BWLabel * messagedlg.tcl: Changed initialization to parseArgs/initFromODB style. Changed to use tk_messageBox on UNIX. * labelframe.tcl: Updated to use BWLabel instead of Label. * labelentry.tcl: Added -class LabelEntry to widget. * label.tcl: Changed class name to BWLabel (to avoid option db clashes with tk labels), changed initialization to parseArgs/initFromODB style. * init.tcl: dropped obsolete Tree option from init. * dialog.tcl: changed initialization to parseArgs/initFromODB style. * notebook.tcl: Added -bd 0 -highlightthickness 0 -relief flat to the notebook container frame so geometries are correct. * entry.tcl: Fixed a conflict with configuring the Entry -text and textvariables. * dialog.tcl: added a -class option to the dialog, to allow the class of the dialog to be set (this enables proper optiondb use for things like the PasswdDlg). 2000-02-28 Eric Melski <ericm@scriptics.com> * widget.tcl: Added Widget::varForOption function, which returns a variable name that can be used to trace changes to an option for a particular megawidget (such as the -values option of a combobox). * entry.tcl: Made cget -text a little more efficient by shortcircuiting in that case. * combobox.tcl: Fixed bug #4248 by making the listbox use a -listvariable instead of trying to micromanage the listbox contents. * tests/entry.test: tests for the Entry widget. * widget.tcl: minor code cleanup. * tree.tcl: Was not getting proper default bg color on Windows, and keyboard navigation was goofy because of internal structure changes. * entry.tcl: Fixed an issue with initial foreground color not being picked up correctly. 2000-02-28 Sven Delmas <sven@scriptics.com> * tree.tcl: Added a procedure called "allnodes" to retrieve the names of all currently defined treenodes. Apparently the internal widget structure of tree was changed recently. I adjusted the "allnodes" procedure to that. 2000-02-25 Eric Melski <ericm@scriptics.com> * combobox.tcl: Fixed a problem with non-editable comboboxes and selecting values. * arrow.tcl: Fixed a problem with the invoke method (doing one too many winfo parents in some cases) * button.tcl: * buttonbox.tcl: * combobox.tcl: * dialog.tcl: * dynhelp.tcl: * entry.tcl: (also fixed validation) * label.tcl: * labelframe.tcl: * listbox.tcl: * mainframe.tcl: * notebook.tcl: * pagesmgr.tcl: * panedw.tcl: * progressbar.tcl: * scrollview.tcl: * scrollw.tcl: * separator.tcl: * spinbox.tcl: * titleframe.tcl: * tree.tcl: Updated to new megawidget architecture. * widget.tcl: Changed internal architecture. When possible, megawidget options are stored in component widgets instead of in an intermediary array. Also, made use of option database to make megawidget creation more efficient. 2000-02-24 Eric Melski <ericm@scriptics.com> * LICENSE.txt: Removed LGPL license; added Tcl-license terms. 2000-02-23 Eric Melski <ericm@scriptics.com> * widget.tcl: Replaced _test_boolean function with a more efficient implementation. 2000-02-18 Eric Melski <ericm@scriptics.com> * images/target.xbm: Placeholder for actual icon. * color.tcl: Change env(BWIDGET_LIBRARY) to ::BWIDGET::LIBRARY; changed proc "dialogue" to "dialog" * pkgIndex.tcl: Updated function spec for color.tcl. * widget.tcl: Various minor speed tweaks; added a reverse mapping from component widget options -> mega-widget options so that subcget can be faster. * entry.tcl: * dropsite.tcl: * dragsite.tcl: * arrow.tcl: Tcl list'd the specs for Widget::declare calls. * combobox.tcl: Removed extraneous ListBox::use call. 2000-02-17 Eric Melski <ericm@scriptics.com> * notebook.tcl: Added an extra check to move the leftmost tab a touch to the right when it is not selected (again, to make the tabs more Windows-like). Also replaced redundant [string equal] checks with a stored pre-check (ie, set foo [string equal ...]). 2000-02-16 Eric Melski <ericm@scriptics.com> * notebook.tcl: Changed appearance of tabs; leftmost tab is now flush with the left of the notebook, and the tabs look more Windows-like. 2000-02-16 Sven Delmas <sven@scriptics.com> * dialog.tcl: Added a new parameter to the draw procedure that allows me to pass in the desired geometry for the window. This was needed to support tracking of dialog window geometries. * tree.tcl: Changed the <KeyPress-space> binding to use "+", so it will not overwrite existing bindings (if there are any). Also added some extra protection in the keynav procedure against the user typing <Left> on a root node (this used to cause a stack trace). 2000-02-11 Eric Melski <ericm@scriptics.com> * tree.tcl: Integrated changes from Eric Boudaillier: [itemconfigure -open ...] optimized to only call redraw_idle 3 if node has subnodes. _cross_event: itemconfigure -open called before -opencmd/closecmd; no more call to _redraw_idle (handled by other procedures) _over_cmd: allow position {root 0} when tree is empty new [find] command: [find @x,y ?confine?] if confine is "confine" returns the node at window coordinate x,y (x,y must be inside the bbox of the node) else returns the node found on the line (in pixel) pixel y [find line] returns the node on the line $line (in -deltay coords) new [line] command: [line node] returns the line where node is drawn -selectfill option added: if true, selection is draw on full width of tree (instead of just highlighting the bbox of the selected nodes) * combobox.tcl: Integrated changes from Eric Boudaillier: internal widget restructuring. * tree.tcl: Added "range" subcommand to selection. Given two nodes, node1 and node2, it will set the selection to the visible nodes between (and including) node1 and node2. If node1 or node2 is not visible, it will find the first visible ancestor of the node and use that as the start/end point instead. * listbox.tcl: Integrated changes from Eric Boudaillier: _over_cmd: allow position 0 when listbox is empty find command, similar to tree find command. * spinbox.tcl: Integrated changes from Eric Boudaillier: cosmetic changes. * color.tcl: Integrated changes from Eric Boudaillier: split widget into two commands: SelectColor::menu and SelectColor::dialog. * progressbar.tcl: Integrated changes from Eric Boudaillier: added -idle option to prevent call to update in case where task is done in idle (ie, fileevents) * scrollview.tcl: Integrated changes from Eric Boudaillier: bindings changed. * scrollw.tcl: Integrated changes from Eric Boudaillier: -managed option: if true, scrollbar are managed during creation, so their size are included in the requested size of the ScrolledWindow. If false, they are not. -sides option: specifies the side of the scrollbar. -size option: specifies size of scrollbar. -ipad option: specifies pad between scrollbar and scrolled widget. * mainframe.tcl: Integrated changes from Eric Boudaillier: support for function keys in accelerators, support for no modifier in accelerators. * notebook.tcl: Integrated changes from Eric Boudaillier: -internalborderwidth (-ibd) option specifies pad around pages; -foreground, -background, -activeforeground, -activebackground, -disabledforeground options for each tab. Code cleanup. 1999-12-23 Sven Delmas <sven@scriptics.com> * scrollw.tcl: Added "update idletask" to scrollbar update to prevent loss of update events. 1999-12-14 Sven Delmas <sven@scriptics.com> * combobox.tcl: When the selected item is changed, the selection is now set to the entire string. 1999-12-13 Eric Melski <ericm@scriptics.com> * buttonbox.tcl: Added a getbuttonstate function, which retrieves the value of a tag used on a button in the buttonbox. 1999-12-08 Eric Melski <ericm@scriptics.com> * combobox.tcl: Removed code that cleared entry selection on focus out events, as this crippled exportselection. 1999-10-29 Eric Melski <ericm@scriptics.com> * buttonbox.tcl: Added a gettags function, which allows the user to query the tags that are used on buttons in the buttonbox. 1999-10-29 Eric Melski <ericm@scriptics.com> * font.tcl: Added one new flag: -querysystem. This lets the user control whether the font selector queries the system (via font families) for the list of fonts, or if it uses a preset list of fonts (which is much faster and less likely to crash some systems). 1999-10-25 Eric Melski <ericm@scriptics.com> * font.tcl: Added support for two new flags: -families and -styles; -families allows you to specify one of all, fixed, or variable, to limit the choice of fonts to those fonts; -styles allows you to specify a list of styles that can be set with the widget (ie, bold, italic, etc). 1999-10-22 Eric Melski <ericm@scriptics.com> * tree.tcl: Fixed some problems with keyboard traversal. Added support for left/right arrows a la MS Explorer. Added support for keyboard-based scrolling. 1999-10-21 Sven Delmas <sven@scriptics.com> * combobox.tcl: Added support for keyboard traversal. The widget will now tab in even when it is not editable. Also the entry widget content will be selected when the user tabs in. The key bindings now allow a traversal of the list (<Down> brings up the list). The arrow button no longer switches to an up button, but instead changes relief. The button is now more Windows NT like (for Windows NT). Changed keyboard bindings: down/up now display/hide the listbox; control-{up|down|prev|next} move through the options without displaying the listbox. 1999-10-21 Eric Melski <ericm@scriptics.com> * tree.tcl: Added a -selectable option to tree nodes, which controls whether or not a given node is selectable (duh). This works with the new -selectcommand option for the tree, and with keyboard traversal (also new). Now, whenever the tree gets a "selection set", it calls the given -selectcommand with the name of the tree and the list of selected nodes, which makes it easier to just drop in place and use. 1999-10-15 Eric Melski <ericm@scriptics.com> * panedw.tcl: Added a -class PanedWindow option to the main frame (the megawidget) of the paned window. 1999-10-15 Eric Melski <ericm@scriptics.com> * dialog.tcl: Added an overrideredirect option to Dialog::draw, which allows the user to control the overrideredirect state of the dialog. 1999-09-19 Eric Melski <ericm@scriptics.com> * mainframe.tcl: Fixed _destroy to unset ALL state variables, so that when a new MainFrame of the same name as an old one is created, it doesn't pick up residual state from the old one. 1999-09-17 Eric Melski <ericm@scriptics.com * mainframe.tcl: Modified menu creation/setmenustate functions to support a new model of menustate. Instead of enabling/disabling a menu item whenever any one of its tags changes state, now it only enables menu items if all of its tags are set. This makes it really easy to, say, only enable the "New Action" entry if both a project is open and an element is selected. * buttonbox.tcl: Added tagging mechanism to buttonbox. When using $bbox add, the first parameter is a list of tags for the button. Then use $bbox setbuttonstate to change the state of a tag. 1999-09-16 Eric Melski <ericm@scriptics.com> * notebook.tcl: Added some (non-functional) code for doing tab-notebooks with the tabs on the bottom.
Generated by dwww version 1.15 on Sat May 18 11:01:48 CEST 2024.