Bwidget Source Code
Check-in [f7d90d78d3]
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:
* combobox hottrack motion bug fixed: "after idle" should fix the problem with very long listbox text items which caused under certain circumstances a complete crash (CDE freeze) this happened under AIX5.3 and CDE, running under tcl/Tk 8.4.7,
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f7d90d78d3c3ac456331e421d6baf7e91d1f2972
User & Date: oberdorfer 2009-09-10 19:23:15
Context
2009-09-11
16:04
* button.tcl, "BWSlim.Toolbutton" style related change to ensure that a button created with "-style BWSlim.Toolbutton" keeps it's layout check-in: 8344f45961 user: oberdorfer tags: trunk
2009-09-10
19:23
* combobox hottrack motion bug fixed: "after idle" should fix the problem with very long listbox text items which caused under certain circumstances a complete crash (CDE freeze) this happened under AIX5.3 and CDE, running under tcl/Tk 8.4.7,
check-in: f7d90d78d3 user: oberdorfer tags: trunk
19:00
*** BWidget revitalization to make usage of ttk *** * pkgIndex.tcl, updated to 1.9.1, themeutils.tcl added, requ. initialization sequence * themeutils.tcl, theme support file added * widget.tcl, various changes related to ttk added * init,tcl, BWidget::set_themedefaults "initialize" added * -- arrow.tcl, button.tcl, buttonbox.tcl, color.tcl, dialog.tcl, entry.tcl, font.tcl, label.tcl, labelframe.tcl, listbox.tcl, mainframe.tcl, messagedlg.tcl, pagesmgr.tcl, panedw.tcl, panelframe.tcl, passwddlg.tcl, progressbar.tcl, scrollframe.tcl, scrollview.tcl, scrollw.tcl, separator.tcl, spinbox.tcl, statusbar.tcl, titleframe.tcl, combobox.tcl, notebook.tcl -- theme related mod's done * utils.tcl, BWidget::bindMiddleMouseMovement added, * tree.tcl, BWidget::bindMiddleMouseMovement added),
-- open issues: Tk*Font as default font (like in dynhelp.tcl), tree.tcl _themechanged proc' not perfect for existing tree item colorization (expanding a branch after changing the style still shows the previous fill color !)
-- note: -- **** package ready for testing ***
check-in: 33b0bf7d88 user: oberdorfer tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to ChangeLog.

1
2
3
4
5
6







7
8
9
10
11
12
13
# ------------------------------------------------------------------------------
#  ChangeLog
#  This file is part of Unifix BWidget Toolkit
#  $Id: ChangeLog,v 1.212 2009/09/10 19:00:51 oberdorfer Exp $
# ------------------------------------------------------------------------------








2009-09-05 Johann Oberdorfer  <[email protected]>

	*** BWidget revitalization to make usage of ttk ***
        * pkgIndex.tcl,   updated to 1.9.1, themeutils.tcl added, requ.
	                  initialization sequence
	* themeutils.tcl, theme support file added
	* widget.tcl,     various changes related to ttk added


|


>
>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# ------------------------------------------------------------------------------
#  ChangeLog
#  This file is part of Unifix BWidget Toolkit
#  $Id: ChangeLog,v 1.213 2009/09/10 19:23:35 oberdorfer Exp $
# ------------------------------------------------------------------------------

2009-09-10 Johann Oberdorfer  <[email protected]>

        * combobox hottrack motion bug fixed:
          "after idle" should fix the problem with very long listbox text items
          which caused under certain circumstances a complete crash (CDE freeze)
          this happened under AIX5.3 and CDE, running under tcl/Tk 8.4.7,

2009-09-05 Johann Oberdorfer  <[email protected]>

	*** BWidget revitalization to make usage of ttk ***
        * pkgIndex.tcl,   updated to 1.9.1, themeutils.tcl added, requ.
	                  initialization sequence
	* themeutils.tcl, theme support file added
	* widget.tcl,     various changes related to ttk added

Changes to combobox.tcl.

1
2
3
4
5
6
7
8
9
10
11
12

13
14
15
16
17
18
19
..
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72












73
74
75
76
77
78
79
# ----------------------------------------------------------------------------
#  combobox.tcl
#  This file is part of Unifix BWidget Toolkit
#  $Id: combobox.tcl,v 1.45 2009/09/08 20:33:36 oberdorfer Exp $
# ----------------------------------------------------------------------------
#  Index of commands:
#     - ComboBox::create
#     - ComboBox::configure
#     - ComboBox::cget
#     - ComboBox::setvalue
#     - ComboBox::getvalue
#     - ComboBox::clearvalue

#     - ComboBox::_create_popup
#     - ComboBox::_mapliste
#     - ComboBox::_unmapliste
#     - ComboBox::_select
#     - ComboBox::_modify_value
#     - ComboBox::_themechanged
# ----------------------------------------------------------------------------
................................................................................
    }

    Widget::syncoptions ComboBox Entry .e {-text {}}

    ::bind BwComboBox <FocusIn> [list after idle {BWidget::refocus %W %W.e}]
    ::bind BwComboBox <Destroy> [list ComboBox::_destroy %W]

    ::bind ListBoxHotTrack <Motion> {
        %W selection clear 0 end
        %W activate @%x,%y
        %W selection set @%x,%y
    }

    if {[lsearch [bindtags .] ComboBoxThemeChanged] < 0} {
        bindtags . [linsert [bindtags .] 1 ComboBoxThemeChanged]
    }

    variable _index
}














# ComboBox::create --
#
#	Create a combobox widget with the given options.
#
# Arguments:
#	path	name of the new widget.


|








>







 







|
|
<
<
<








>
>
>
>
>
>
>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
..
54
55
56
57
58
59
60
61
62



63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# ----------------------------------------------------------------------------
#  combobox.tcl
#  This file is part of Unifix BWidget Toolkit
#  $Id: combobox.tcl,v 1.46 2009/09/10 19:23:15 oberdorfer Exp $
# ----------------------------------------------------------------------------
#  Index of commands:
#     - ComboBox::create
#     - ComboBox::configure
#     - ComboBox::cget
#     - ComboBox::setvalue
#     - ComboBox::getvalue
#     - ComboBox::clearvalue
#     - ComboBox::hottrackMotion
#     - ComboBox::_create_popup
#     - ComboBox::_mapliste
#     - ComboBox::_unmapliste
#     - ComboBox::_select
#     - ComboBox::_modify_value
#     - ComboBox::_themechanged
# ----------------------------------------------------------------------------
................................................................................
    }

    Widget::syncoptions ComboBox Entry .e {-text {}}

    ::bind BwComboBox <FocusIn> [list after idle {BWidget::refocus %W %W.e}]
    ::bind BwComboBox <Destroy> [list ComboBox::_destroy %W]

    ::bind ListBoxHotTrack <Motion> \
             [list after idle {ComboBox::hottrackMotion %W %x %y}]




    if {[lsearch [bindtags .] ComboBoxThemeChanged] < 0} {
        bindtags . [linsert [bindtags .] 1 ComboBoxThemeChanged]
    }

    variable _index
}


# johann: -bug fixed-
# after idle should fix the problem with very long listbox text items
# which causes under certain circumstances the hole desktop to crash
# happens under AIX5.3 and CDE, running under tcl/Tk 8.4.7,

proc ComboBox::hottrackMotion { w x y } {
    $w selection clear 0 end
    $w activate @$x,$y
    $w selection set @$x,$y
}


# ComboBox::create --
#
#	Create a combobox widget with the given options.
#
# Arguments:
#	path	name of the new widget.