Tk Library Source Code
Check-in [526e68681b]
Not logged in
Bounty program for improvements to Tcl and certain Tcl packages.

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

Overview
Comment: * scripts/*.tcl: Significantly extended and improved the code for initializing the variable "tablelist::scalingpct", especially on X11; added the percentage value 175 and the corresponding arrow styles "flat13x7", "flatAngle13x7", and "photo13x7"; removed the arrow styles "flat5x3" and "flat5x4"; changed the tree style names "(bicolor|classic|plain)1", ..., "(bicolor|classic|plain)4" to "(bicolor|classic|plain)100", "(bicolor|classic|plain)125", "(bicolor|classic|plain)150", and "(bicolor|classic|plain)200"; added the tree styles "(bicolor|classic|plain)175"; updated the tree styles "adwaita", "ubuntuMate", and "win10"; made the "refreshsorting" subcommand by orders of magnitude faster; fixed an issue related to the bindings for the edit window; fixed a bug related to the "expand" subcommand for a list of indices; updated the copyright information.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256:526e68681b96074345d90ad5f8a61330eb5245676e653f742fa41a43d1e48a64
User & Date: csaba 2020-04-21 16:58:58
Context
2020-04-21
16:59
* scripts/tclIndex: Newly generated. check-in: 8d0b192f41 user: csaba tags: trunk
16:58
* scripts/*.tcl: Significantly extended and improved the code for initializing the variable "tablelist::scalingpct", especially on X11; added the percentage value 175 and the corresponding arrow styles "flat13x7", "flatAngle13x7", and "photo13x7"; removed the arrow styles "flat5x3" and "flat5x4"; changed the tree style names "(bicolor|classic|plain)1", ..., "(bicolor|classic|plain)4" to "(bicolor|classic|plain)100", "(bicolor|classic|plain)125", "(bicolor|classic|plain)150", and "(bicolor|classic|plain)200"; added the tree styles "(bicolor|classic|plain)175"; updated the tree styles "adwaita", "ubuntuMate", and "win10"; made the "refreshsorting" subcommand by orders of magnitude faster; fixed an issue related to the bindings for the edit window; fixed a bug related to the "expand" subcommand for a list of indices; updated the copyright information. check-in: 526e68681b user: csaba tags: trunk
16:57
* CHANGES.txt: Updated to reflect the changes. * doc/*.html: check-in: 3bb5a3d6fb user: csaba tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to modules/tablelist/scripts/mwutil.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
..
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
...
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
...
637
638
639
640
641
642
643






































































































































































#==============================================================================
# Contains utility procedures for mega-widgets.
#
# Structure of the module:
#   - Namespace initialization
#   - Public utility procedures
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

package require Tk 8

#
# Namespace initialization
# ========================
#

namespace eval mwutil {
    #
    # Public variables:
    #
    variable version	2.15
    variable library
    if {$::tcl_version >= 8.4} {
	set library	[file dirname [file normalize [info script]]]
    } else {
	set library	[file dirname [info script]] ;# no "file normalize" yet
    }

................................................................................
    #
    namespace export	wrongNumArgs getAncestorByClass convEventFields \
			defineKeyNav processTraversal focusNext focusPrev \
			configureWidget fullConfigOpt fullOpt enumOpts \
			configureSubCmd attribSubCmd hasattribSubCmd \
			unsetattribSubCmd getScrollInfo getScrollInfo2 \
			isScrollable hasFocus genMouseWheelEvent \
			windowingSystem currentTheme

    #
    # Make modified versions of the procedures tk_focusNext and
    # tk_focusPrev, to be invoked in the processTraversal command
    #
    proc makeFocusProcs {} {
	#
................................................................................
	focus $focusWin
    }
}

#------------------------------------------------------------------------------
# mwutil::windowingSystem
#
# Returns the current windowing system ("x11", "win32", "classic", or "aqua").
#------------------------------------------------------------------------------
proc mwutil::windowingSystem {} {
    if {[catch {tk windowingsystem} winSys] != 0} {
	switch $::tcl_platform(platform) {
	    unix	{ set winSys x11 }
	    windows	{ set winSys win32 }
	    macintosh	{ set winSys classic }
................................................................................
	return $::ttk::currentTheme
    } elseif {[info exists ::tile::currentTheme]} {
	return $::tile::currentTheme
    } else {
	return ""
    }
}













































































































































































|













|







 







|







 







|







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
..
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
...
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
...
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
#==============================================================================
# Contains utility procedures for mega-widgets.
#
# Structure of the module:
#   - Namespace initialization
#   - Public utility procedures
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

package require Tk 8

#
# Namespace initialization
# ========================
#

namespace eval mwutil {
    #
    # Public variables:
    #
    variable version	2.16
    variable library
    if {$::tcl_version >= 8.4} {
	set library	[file dirname [file normalize [info script]]]
    } else {
	set library	[file dirname [info script]] ;# no "file normalize" yet
    }

................................................................................
    #
    namespace export	wrongNumArgs getAncestorByClass convEventFields \
			defineKeyNav processTraversal focusNext focusPrev \
			configureWidget fullConfigOpt fullOpt enumOpts \
			configureSubCmd attribSubCmd hasattribSubCmd \
			unsetattribSubCmd getScrollInfo getScrollInfo2 \
			isScrollable hasFocus genMouseWheelEvent \
			windowingSystem currentTheme scalingPercentage

    #
    # Make modified versions of the procedures tk_focusNext and
    # tk_focusPrev, to be invoked in the processTraversal command
    #
    proc makeFocusProcs {} {
	#
................................................................................
	focus $focusWin
    }
}

#------------------------------------------------------------------------------
# mwutil::windowingSystem
#
# Returns the windowing system ("x11", "win32", "classic", or "aqua").
#------------------------------------------------------------------------------
proc mwutil::windowingSystem {} {
    if {[catch {tk windowingsystem} winSys] != 0} {
	switch $::tcl_platform(platform) {
	    unix	{ set winSys x11 }
	    windows	{ set winSys win32 }
	    macintosh	{ set winSys classic }
................................................................................
	return $::ttk::currentTheme
    } elseif {[info exists ::tile::currentTheme]} {
	return $::tile::currentTheme
    } else {
	return ""
    }
}

#------------------------------------------------------------------------------
# mwutil::scalingPercentage
#
# Returns the display's current scaling percentage (100, 125, 150, 175, or 200).
#------------------------------------------------------------------------------
proc mwutil::scalingPercentage {} {
    set pct [expr {[tk scaling] * 75}]

    if {[string compare [windowingSystem] "x11"] == 0} {
	set factor 1
	if {[catch {exec ps -e | grep xfce}] == 0} {			;# Xfce
	    if {[catch {exec xfconf-query -c xsettings \
		 -p /Gdk/WindowScalingFactor} result] == 0} {
		set factor $result
		set pct [expr {100 * $factor}]
	    }
	} elseif {[catch {exec ps -e | grep mate}] == 0} {		;# MATE
	    if {[catch {exec gsettings get org.mate.interface \
		 window-scaling-factor} result] == 0} {
		if {$result == 0} {			;# means: "Auto-detect"
		    #
		    # Try to get the scaling factor from the cursor size
		    #
		    if {[catch {exec xrdb -query | grep Xcursor.size} \
			 result] == 0 &&
			[catch {exec gsettings get org.mate.peripherals-mouse \
			 cursor-size} defCursorSize] == 0} {
			scan $result "%*s %d" cursorSize
			set factor [expr {($cursorSize + $defCursorSize - 1) /
					  $defCursorSize}]
			set pct [expr {100 * $factor}]
		    }
		} else {
		    set factor $result
		    set pct [expr {100 * $factor}]
		}
	    }
	} elseif {[catch {exec gsettings get \
		   org.gnome.settings-daemon.plugins.xsettings overrides} \
		   result] == 0 &&
		  [set idx \
		   [string first "'Gdk/WindowScalingFactor'" $result]] >= 0} {
	    scan [string range $result $idx end] "%*s <%d>" factor
	    set pct [expr {100 * $factor}]
	} elseif {[catch {exec xrdb -query | grep Xft.dpi} result] == 0} {
	    scan $result "%*s %f" dpi
	    set pct [expr {100 * $dpi / 96}]
	} elseif {$::tk_version >= 8.3 &&
		  [catch {exec ps -e | grep gnome}] == 0 &&
		  ![info exists ::env(WAYLAND_DISPLAY)] &&
		  [catch {exec xrandr | grep " connected"} result] == 0 &&
		  [catch {open $::env(HOME)/.config/monitors.xml} chan] == 0} {
	    #
	    # Get the list of connected outputs reported by xrandr
	    #
	    set outputList {}
	    foreach line [split $result "\n"] {
		set idx [string first " " $line]
		set output [string range $line 0 [incr idx -1]]
		lappend outputList $output
	    }
	    set outputList [lsort $outputList]

	    #
	    # Get the content of the file ~/.config/monitors.xml
	    #
	    set str [read $chan]
	    close $chan

	    #
	    # Run over the file's "configuration" sections
	    #
	    set idx 0
	    while {[set idx2 [string first "<configuration>" $str $idx]] >= 0} {
		set idx2 [string first ">" $str $idx2]
		set idx [string first "</configuration>" $str $idx2]
		set config [string range $str [incr idx2] [incr idx -1]]

		#
		# Get the list of connectors within this configuration
		#
		set connectorList {}
		foreach {dummy connector} [regexp -all -inline \
			{<connector>([^<]+)</connector>} $config] {
		    lappend connectorList $connector
		}
		set connectorList [lsort $connectorList]

		#
		# If $outputList and $connectorList are identical then set the
		# variable pct to 100 or 200, depending on the max. scaling
		# within this configuration, and exit the loop.  (Due to the
		# way fractional scaling is implemented in GNOME, we have to
		# set the variable pct to 200 rather than 125, 150, or 175.)
		#
		if {[string compare $outputList $connectorList] == 0} {
		    set maxScaling 0.0
		    foreach {dummy scaling} [regexp -all -inline \
			    {<scale>([^<]+)</scale>} $config] {
			if {$scaling > $maxScaling} {
			    set maxScaling $scaling
			}
		    }
		    set pct [expr {$maxScaling > 1.0 ? 200 : 100}]
		    break
		}
	    }
	}

	#
	# Correct the sizes of the standard fonts by replacing the sizes
	# in pixels contained in the file $::tk_library/ttk/fonts.tcl
	# with sizes in points, and then multiply them with $factor
	#
	if {$::tk_version >= 8.5} {
	    if {$factor > 2} {
		set factor 2
	    }

	    set chan [open $::tk_library/ttk/fonts.tcl]
	    set str [read $chan]
	    close $chan

	    set idx [string first "courier" $str]
	    set str [string range $str $idx end]

	    set idx [string first "F(size)" $str]
	    scan [string range $str $idx end] "%*s %d" size
	    if {$size < 0} { set size 9 }	;# -12 -> 9, for compatibility
	    foreach font {TkDefaultFont TkTextFont TkHeadingFont
			  TkIconFont TkMenuFont} {
		font configure $font -size [expr {$factor * $size}]
	    }

	    set idx [string first "F(ttsize)" $str]
	    scan [string range $str $idx end] "%*s %d" size
	    if {$size < 0} { set size 8 }	;# -10 > 8, for compatibility
	    foreach font {TkTooltipFont TkSmallCaptionFont} {
		font configure $font -size [expr {$factor * $size}]
	    }

	    set idx [string first "F(capsize)" $str]
	    scan [string range $str $idx end] "%*s %d" size
	    if {$size < 0} { set size 11 }	;# -14 -> 11, for compatibility
	    font configure TkCaptionFont -size [expr {$factor * $size}]

	    set idx [string first "F(fixedsize)" $str]
	    scan [string range $str $idx end] "%*s %d" size
	    if {$size < 0} { set size 9 }	;# -12 -> 9, for compatibility
	    font configure TkFixedFont -size [expr {$factor * $size}]
	}
    }

    if {$pct < 100 + 12.5} {
	return 100
    } elseif {$pct < 125 + 12.5} {
	return 125 
    } elseif {$pct < 150 + 12.5} {
	return 150 
    } elseif {$pct < 175 + 12.5} {
	return 175 
    } else {
	return 200
    }
}

Changes to modules/tablelist/scripts/repair.tcl.

6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# "tablelistSort.tcl", and "tablelistUtil.tcl" by defining the procedure
# "arrElemExists" and replacing all invocations of "[info exists
# <array>(<name>)]" with "[arrElemExists <array> <name>]".  This works around a
# bug in Tcl versions 8.2, 8.3.0 - 8.3.2, and 8.4a1 (fixed in Tcl 8.3.3 and
# 8.4a2), which causes excessive memory use when calling "info exists" on
# non-existent array elements.
#
# Copyright (c) 2001-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

set procDef {
    #
    # The following procedure returns 1 if arrName($name) exists and
    # 0 otherwise.  It is a (partial) replacement for [info exists
    # arrName($name)], which -- due to a bug in Tcl versions 8.2,







|







6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# "tablelistSort.tcl", and "tablelistUtil.tcl" by defining the procedure
# "arrElemExists" and replacing all invocations of "[info exists
# <array>(<name>)]" with "[arrElemExists <array> <name>]".  This works around a
# bug in Tcl versions 8.2, 8.3.0 - 8.3.2, and 8.4a1 (fixed in Tcl 8.3.3 and
# 8.4a2), which causes excessive memory use when calling "info exists" on
# non-existent array elements.
#
# Copyright (c) 2001-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

set procDef {
    #
    # The following procedure returns 1 if arrName($name) exists and
    # 0 otherwise.  It is a (partial) replacement for [info exists
    # arrName($name)], which -- due to a bug in Tcl versions 8.2,

Changes to modules/tablelist/scripts/tablelistBind.tcl.

5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#   - Public helper procedures
#   - Binding tag Tablelist
#   - Binding tag TablelistWindow
#   - Binding tag TablelistBody
#   - Binding tag TablelistHeader
#   - Binding tags TablelistLabel, TablelistSubLabel, and TablelistArrow
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public helper procedures
# ========================
#








|







5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#   - Public helper procedures
#   - Binding tag Tablelist
#   - Binding tag TablelistWindow
#   - Binding tag TablelistBody
#   - Binding tag TablelistHeader
#   - Binding tags TablelistLabel, TablelistSubLabel, and TablelistArrow
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public helper procedures
# ========================
#

Changes to modules/tablelist/scripts/tablelistConfig.tcl.

1
2
3
4
5
6
7
8
9
10
11
...
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351

352
353
354
355
356
357
358
...
598
599
600
601
602
603
604
605
606








607
608
609
610
611
612
613
....
3184
3185
3186
3187
3188
3189
3190




3191
3192
3193
3194
3195
3196
3197
....
4005
4006
4007
4008
4009
4010
4011

















4012
4013
4014
4015
4016
4017
4018
#==============================================================================
# Contains private configuration procedures for tablelist widgets.
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#------------------------------------------------------------------------------
# tablelist::extendConfigSpecs
#
# Extends the elements of the array configSpecs.
#------------------------------------------------------------------------------
................................................................................
			    set arrowStyle	flat7x4
			    set treeStyle	winnative
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} elseif {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista
		    variable scalingpct

		    switch [winfo rgb . SystemHighlight] {
			"13107 39321 65535" {			;# Vista Aero
			    set arrowColor	#569bc0
			    switch $scalingpct {
				100 { set arrowStyle	photo7x4 }
				125 { set arrowStyle	photo9x5 }
				150 { set arrowStyle	photo11x6 }
				200 { set arrowStyle	photo15x8 }
			    }
			    set treeStyle	vistaAero
			}
			default {				;# Win Classic
			    set arrowColor	SystemButtonShadow
			    switch $scalingpct {
				100 { set arrowStyle	flat7x4 }
				125 { set arrowStyle	flat9x5 }
				150 { set arrowStyle	flat11x6 }
				200 { set arrowStyle	flat15x8 }
			    }
			    set treeStyle	vistaClassic
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} elseif {$::tcl_platform(osVersion) < 10.0} {	;# Win 7/8
		    variable scalingpct

		    switch [winfo rgb . SystemHighlight] {
			"13107 39321 65535" {			;# Win 7/8 Aero
			    set arrowColor	#569bc0
			    switch $scalingpct {
				100 { set arrowStyle	photo7x4 }
				125 { set arrowStyle	photo9x5 }
				150 { set arrowStyle	photo11x6 }
				200 { set arrowStyle	photo15x8 }
			    }
			    set treeStyle	win7Aero
			}
			default {				;# Win Classic
			    set arrowColor	SystemButtonShadow
			    switch $scalingpct {
				100 { set arrowStyle	flat7x4 }
				125 { set arrowStyle	flat9x5 }
				150 { set arrowStyle	flat11x6 }
				200 { set arrowStyle	flat15x8 }
			    }
			    set treeStyle	win7Classic
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} else {					;# Win 10
		    variable scalingpct
		    switch $scalingpct {
			100 { set arrowStyle	flatAngle7x4 }
			125 { set arrowStyle	flatAngle9x5 }
			150 { set arrowStyle	flatAngle11x6 }
			200 { set arrowStyle	flatAngle15x8 }
		    }

		    set arrowColor		#595959
		    set arrowDisabledColor	SystemDisabledText

		    set treeStyle		win10
		}
	    }

	    classic -
	    aqua {
		scan $::tcl_platform(osVersion) "%d" majorOSVersion
................................................................................
		    #
		    foreach col $data(arrowColList) {
			if {![info exists data($col$opt)]} {
			    configCanvas $win $col
			}
		    }
		}
		-labelheight -
		-labelpady {








		    #
		    # Adjust the height of the header frame
		    #
		    adjustHeaderHeight $win
		}
	    }
	}
................................................................................
		    unset data($name)
		    if {$inBody} {
			incr data(imgCount) -1
		    }
		    destroy $imgLabel
		}
	    } else {




		if {$inBody && ![info exists data($name)]} {
		    incr data(imgCount)
		}
		if {[winfo exists $imgLabel] &&
		    [string compare $val $data($name)] != 0} {
		    destroy $imgLabel
		}
................................................................................
		return $data($key,$col$opt)
	    } else {
		return ""
	    }
	}
    }
}


















#------------------------------------------------------------------------------
# tablelist::makeListVar
#
# Arranges for the global variable specified by varName to become the list
# variable associated with the tablelist widget win.
#------------------------------------------------------------------------------



|







 







<
<



<
|
<
<
<
<




<
|
<
<
<
<






<
<



<
|
<
<
<
<




<
|
<
<
<
<






<
<
<
<
<
<
<
<


>







 







|

>
>
>
>
>
>
>
>







 







>
>
>
>







 







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







1
2
3
4
5
6
7
8
9
10
11
...
281
282
283
284
285
286
287


288
289
290

291




292
293
294
295

296




297
298
299
300
301
302


303
304
305

306




307
308
309
310

311




312
313
314
315
316
317








318
319
320
321
322
323
324
325
326
327
...
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
....
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
....
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
#==============================================================================
# Contains private configuration procedures for tablelist widgets.
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#------------------------------------------------------------------------------
# tablelist::extendConfigSpecs
#
# Extends the elements of the array configSpecs.
#------------------------------------------------------------------------------
................................................................................
			    set arrowStyle	flat7x4
			    set treeStyle	winnative
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} elseif {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista


		    switch [winfo rgb . SystemHighlight] {
			"13107 39321 65535" {			;# Vista Aero
			    set arrowColor	#569bc0

			    set arrowStyle	photo[defaultWinArrowSize]




			    set treeStyle	vistaAero
			}
			default {				;# Win Classic
			    set arrowColor	SystemButtonShadow

			    set arrowStyle	flat[defaultWinArrowSize]




			    set treeStyle	vistaClassic
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} elseif {$::tcl_platform(osVersion) < 10.0} {	;# Win 7/8


		    switch [winfo rgb . SystemHighlight] {
			"13107 39321 65535" {			;# Win 7/8 Aero
			    set arrowColor	#569bc0

			    set arrowStyle	photo[defaultWinArrowSize]




			    set treeStyle	win7Aero
			}
			default {				;# Win Classic
			    set arrowColor	SystemButtonShadow

			    set arrowStyle	flat[defaultWinArrowSize]




			    set treeStyle	win7Classic
			}
		    }
		    set arrowDisabledColor	SystemDisabledText

		} else {					;# Win 10








		    set arrowColor		#595959
		    set arrowDisabledColor	SystemDisabledText
		    set arrowStyle		flatAngle[defaultWinArrowSize]
		    set treeStyle		win10
		}
	    }

	    classic -
	    aqua {
		scan $::tcl_platform(osVersion) "%d" majorOSVersion
................................................................................
		    #
		    foreach col $data(arrowColList) {
			if {![info exists data($col$opt)]} {
			    configCanvas $win $col
			}
		    }
		}
		-labelfont -
		-labelpady {
		    #
		    # Adjust the columns (including
		    # the height of the header frame)
		    #
		    adjustColumns $win allLabels 1
		    updateViewWhenIdle $win
		}
		-labelheight {
		    #
		    # Adjust the height of the header frame
		    #
		    adjustHeaderHeight $win
		}
	    }
	}
................................................................................
		    unset data($name)
		    if {$inBody} {
			incr data(imgCount) -1
		    }
		    destroy $imgLabel
		}
	    } else {
		if {[catch {image type $val} result] != 0} {
		    return -code error $result
		}

		if {$inBody && ![info exists data($name)]} {
		    incr data(imgCount)
		}
		if {[winfo exists $imgLabel] &&
		    [string compare $val $data($name)] != 0} {
		    destroy $imgLabel
		}
................................................................................
		return $data($key,$col$opt)
	    } else {
		return ""
	    }
	}
    }
}

#------------------------------------------------------------------------------
# tablelist::defaultWinArrowSize
#
# Returns the size (of the form "<width>x<height>") of the default sort arrow
# on Windows, corresponding to the display's scaling level.
#------------------------------------------------------------------------------
proc tablelist::defaultWinArrowSize {} {
    variable scalingpct
    switch $scalingpct {
	100 { return "7x4" }
	125 { return "9x5" }
	150 { return "11x6" }
	175 { return "13x7" }
	200 { return "15x8" }
    }
}

#------------------------------------------------------------------------------
# tablelist::makeListVar
#
# Arranges for the global variable specified by varName to become the list
# variable associated with the tablelist widget win.
#------------------------------------------------------------------------------

Changes to modules/tablelist/scripts/tablelistEdit.tcl.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
....
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
....
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
#
# Structure of the module:
#   - Namespace initialization
#   - Public procedures related to interactive cell editing
#   - Private procedures implementing the interactive cell editing
#   - Private procedures used in bindings related to interactive cell editing
#
# Copyright (c) 2003-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

................................................................................
	    foreach {tablelist::W tablelist::x tablelist::y} \
		[tablelist::convEventFields %W %x %y] {}

	    set tablelist::priv(x) ""
	    set tablelist::priv(y) ""
	    after cancel $tablelist::priv(afterId)
	    set tablelist::priv(afterId) ""
	    set tablelist::priv(justReleased) 1
	    after 100 [list set tablelist::priv(justReleased) 0]
	    set tablelist::priv(releasedInEditWin) 1
	    if {!$tablelist::priv(clickedInEditWin)} {
		if {$tablelist::priv(justClicked)} {
		    tablelist::moveOrActivate $tablelist::W \
			$tablelist::priv(row) $tablelist::priv(col) 1
		} else {
		    tablelist::moveOrActivate $tablelist::W \
................................................................................
	    eval [strMap {"%W" "$w"} [bind Text <Return>]]
	} else {
	    eval [strMap {"%W" "$w"} [bind Text <Control-i>]]
	}
	return -code break ""
    } elseif {[regexp {^(T?Entry|TCombobox|T?Spinbox)$} $class]} {
	if {[string match "T*" $class]} {
	    if {[string length [info procs "::ttk::entry::Insert"]] != 0} {
		ttk::entry::Insert $w $str
	    } else {
		tile::entry::Insert $w $str
	    }
	} elseif {[string length [info procs "::tk::EntryInsert"]] != 0} {
	    tk::EntryInsert $w $str
	} else {
	    tkEntryInsert $w $str
	}
	return -code break ""
    }
}







|







 







<
<







 







|




|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
....
2468
2469
2470
2471
2472
2473
2474


2475
2476
2477
2478
2479
2480
2481
....
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
#
# Structure of the module:
#   - Namespace initialization
#   - Public procedures related to interactive cell editing
#   - Private procedures implementing the interactive cell editing
#   - Private procedures used in bindings related to interactive cell editing
#
# Copyright (c) 2003-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

................................................................................
	    foreach {tablelist::W tablelist::x tablelist::y} \
		[tablelist::convEventFields %W %x %y] {}

	    set tablelist::priv(x) ""
	    set tablelist::priv(y) ""
	    after cancel $tablelist::priv(afterId)
	    set tablelist::priv(afterId) ""


	    set tablelist::priv(releasedInEditWin) 1
	    if {!$tablelist::priv(clickedInEditWin)} {
		if {$tablelist::priv(justClicked)} {
		    tablelist::moveOrActivate $tablelist::W \
			$tablelist::priv(row) $tablelist::priv(col) 1
		} else {
		    tablelist::moveOrActivate $tablelist::W \
................................................................................
	    eval [strMap {"%W" "$w"} [bind Text <Return>]]
	} else {
	    eval [strMap {"%W" "$w"} [bind Text <Control-i>]]
	}
	return -code break ""
    } elseif {[regexp {^(T?Entry|TCombobox|T?Spinbox)$} $class]} {
	if {[string match "T*" $class]} {
	    if {[llength [info procs "::ttk::entry::Insert"]] != 0} {
		ttk::entry::Insert $w $str
	    } else {
		tile::entry::Insert $w $str
	    }
	} elseif {[llength [info procs "::tk::EntryInsert"]] != 0} {
	    tk::EntryInsert $w $str
	} else {
	    tkEntryInsert $w $str
	}
	return -code break ""
    }
}

Changes to modules/tablelist/scripts/tablelistImages.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
...
199
200
201
202
203
204
205




















206
207
208
209
210
211
212
...
367
368
369
370
371
372
373




















374
375
376
377
378
379
380
...
474
475
476
477
478
479
480
























481
482
483
484
485
486
487
...
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748

749
750
751
752
753
754
755


756
757
758
759
760
761


762
763
764
765
766
767

768
769
770
771
772
773

774
775
776
777
778
779


780
781
782
783
784
785

786
787
788
789
790
791
792
...
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961

962
963
964
965
966
967
968
969
970
971
972


973
974
975
976
977
978
979


980
981
982
983
984
985
986



987
988
989
990
991
992


993
994
995
996
997
998
999

1000
1001
1002
1003
1004
1005
1006

1007
1008
1009
1010
1011
1012
1013
1014
....
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065


1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105


1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140

1141
1142
1143
1144
1145
1146
1147


1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180

1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191


1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203


1204
1205
1206
1207
1208
1209


1210
1211
1212
1213
1214

1215
1216
1217
1218





1219



1220
1221
1222
1223
1224

1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
....
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251

1252
1253
1254
1255
1256
1257
1258
1259
1260


1261
1262
1263
1264
1265
1266


1267
1268
1269
1270
1271
1272


1273
1274
1275
1276
1277
1278


1279
1280
1281
1282
1283
1284


1285
1286
1287
1288
1289
1290


1291
1292
1293
1294
1295
1296
1297
....
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393




1394















1395
1396
1397


1398
1399
1400
1401

1402
1403
1404
1405
1406
1407
1408
....
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605

1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
....
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696


1697
1698
1699
1700
1701
1702
1703


1704
1705
1706
1707
1708
1709


1710
1711
1712
1713
1714
1715
1716
....
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840

1841
1842
1843
1844
1845
1846


1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857


1858
1859
1860
1861
1862
1863
1864
....
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916

1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943


1944
1945
1946
1947
1948


1949
1950
1951
1952
1953
1954
1955
1956
1957

1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977



1978
1979
1980
1981
1982


1983
1984
1985
1986
1987
1988

1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008






2009
2010
2011
2012
2013





2014
2015
2016
2017
2018

2019
























2020
2021
2022
2023

2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
....
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174

2175
2176
2177
2178
2179
2180
2181
2182

2183
2184
2185
2186
2187
2188
2189


2190
2191
2192
2193
2194
2195
2196
....
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229

2230
2231
2232
2233
2234
2235
2236
2237
2238


2239
2240
2241
2242
2243

2244
2245
2246
2247
2248
2249
2250
2251
....
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284

2285
2286
2287
2288
2289
2290


2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305


2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329

2330
2331
2332
2333

2334
2335
2336
2337

2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356

2357
2358
2359
2360
2361
2362
2363
....
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
....
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445

2446
2447
2448
2449
2450
2451


2452
2453
2454
2455
2456
2457
2458
2459
2460
2461

2462
2463
2464
2465
2466
2467
2468
2469
....
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503

2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514



2515
2516
2517
2518
2519
2520
2521


2522
2523
2524
2525
2526
2527
2528
....
2536
2537
2538
2539
2540
2541
2542






















































2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568


2569
2570
2571
2572
2573
2574
2575
2576



2577
2578
2579
2580
2581
2582
2583


2584
2585
2586
2587
2588
2589
2590
....
2663
2664
2665
2666
2667
2668
2669



















2670
2671
2672
2673
2674
2675
2676
....
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730

2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
....
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776


2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
....
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822

2823
2824
2825
2826

2827




































2828






2829
2830
2831
2832
2833
2834
2835
2836

2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
....
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873


2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887

2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
....
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031

3032
3033
3034
3035
3036
3037
3038
3039

3040
3041
3042
3043
3044
3045
3046
3047
3048

3049
3050
3051
3052
3053
3054
3055
3056
3057

3058
3059
3060
3061
3062
3063

3064
3065
3066
3067
3068





3069
3070
3071
3072

3073



3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
#==============================================================================
# Contains procedures that create various bitmap and photo images.  The
# argument w specifies a canvas displaying a sort arrow, while the argument win
# stands for a tablelist widget.
#
# Copyright (c) 2006-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#------------------------------------------------------------------------------
# tablelist::flat5x3Arrows
#------------------------------------------------------------------------------
proc tablelist::flat5x3Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp5x3_width 5
#define triangleUp5x3_height 3
static unsigned char triangleUp5x3_bits[] = {
   0x04, 0x0e, 0x1f};
"
    image create bitmap triangleDn$w -data "
#define triangleDn5x3_width 5
#define triangleDn5x3_height 3
static unsigned char triangleDn5x3_bits[] = {
   0x1f, 0x0e, 0x04};
"
}

#------------------------------------------------------------------------------
# tablelist::flat5x4Arrows
#------------------------------------------------------------------------------
proc tablelist::flat5x4Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp5x4_width 5
#define triangleUp5x4_height 4
static unsigned char triangleUp5x4_bits[] = {
   0x04, 0x0e, 0x1f, 0x1f};
"
    image create bitmap triangleDn$w -data "
#define triangleDn5x4_width 5
#define triangleDn5x4_height 4
static unsigned char triangleDn5x4_bits[] = {
   0x1f, 0x1f, 0x0e, 0x04};
"
}

#------------------------------------------------------------------------------
# tablelist::flat6x4Arrows
#------------------------------------------------------------------------------
proc tablelist::flat6x4Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp6x4_width 6
#define triangleUp6x4_height 4
................................................................................
    image create bitmap triangleDn$w -data "
#define triangleDn11x6_width 11
#define triangleDn11x6_height 6
static unsigned char triangleDn11x6_bits[] = {
   0xff, 0x07, 0xfe, 0x03, 0xfc, 0x01, 0xf8, 0x00, 0x70, 0x00, 0x20, 0x00};
"
}





















#------------------------------------------------------------------------------
# tablelist::flat15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::flat15x8Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp15x8_width 15
................................................................................
    image create bitmap triangleDn$w -data "
#define triangleDn11x6_width 11
#define triangleDn11x6_height 6
static unsigned char triangleDn11x6_bits[] = {
   0x03, 0x06, 0x06, 0x03, 0x8c, 0x01, 0xd8, 0x00, 0x70, 0x00, 0x20, 0x00};
"
}





















#------------------------------------------------------------------------------
# tablelist::flatAngle15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::flatAngle15x8Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp15x8_width 15
................................................................................
R0lGODlhCwAGAKUkAAAAADl1ml+DnlaRtWGZu2ievXaet2+gvXekvmKfw32owXu314Kqwoiswoey
yo21zIa+3JC2zZ26y5DB3ZjG34fE5ZHJ55/J4ZrN6KTC1KjN4qLb+azf+rrV5rDi/rrn/7/m+8Ps
/8vu/9Pw////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////yH5BAEKAD8ALAAAAAALAAYAAAYqQEFg
QCgcEApGQ/IzJBaQCeWi6fyujsrG8wmNruCHhfMRgc8RDOjMzrCDADs=
"
}

























#------------------------------------------------------------------------------
# tablelist::photo15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::photo15x8Arrows w {
    foreach dir {Up Dn} {
	image create photo triangle$dir$w
................................................................................
	variable adwaita_${mode}Img \
		 [image create photo tablelist_adwaita_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_adwaita_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAUklE
QVQ4T52LsQ3AMAzD9Gan/NgHXRgZYqJGImTgQAlURFzRjg4UaVTfQZFeN6bM0IopKzzGFIbbmPIP
n/pXKGaUUMwooZhRQjGjpB0d2vFM6AMkZwGtV+hP7wAAAABJRU5ErkJggg==
"
	tablelist_adwaita_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAUUlE
QVQ4T53LUQrAMAgEUe+Yr14zF7RaQiA4rUsDD+LCmLv/gqMCRwWOChwV+UaYjauEq/6KS/Q0+8Mx

Ruk8zvg1SnWIoIsSjgocFTgqcOy53bmYAXcYbKcDAAAAAElFTkSuQmCC
"
	tablelist_adwaita_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAU0lE
QVQ4T52LQQrAMAzD8s39oO/bB7N4UCgiW00POlhYkZlHtNKBYmB/QnEXVkyh0IopZriNKdbwN6Zg
eBX8vFBYkaCwIkFhRYLCikQrHVq5J+MBfENbgN9EUrEAAAAASUVORK5CYII=


"
	tablelist_adwaita_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAATUlE
QVQ4T53LsQ0AIAwDQXakYk0WDLhD8BCL4iLlJZeI+ILRgdGB0YHRoVOnnmjTMczGx0jWh8Y4kj2s
4+tIKGrwHAlGB0YHRgfGXJQByYxbHYdyNm0AAAAASUVORK5CYII=


"
	tablelist_adwaita_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAU0lE
QVQ4T52LQQ6AMAzD8tM9BX5eqDisFmWLOPjgRFZE/KIdHSjSqL6CcqsbU57Qiikz3MYUhslnTHmH
R/0rFDNKKGaUUMwooUhn9RXt6NCOe0IXeqwIcNEv1OkAAAAASUVORK5CYII=

"
	tablelist_adwaita_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAUklE
QVQ4T53LUQqAMAwE0dzaT715dKUU2kzrYuFBOrCRmb9gdGB0YHRgdOgdD107Zxm29W5cRu+mHzzG
kYyfcbwcSQ0Rl8x9htGB0YHRgfFbxg0RwQjxGF3ifAAAAABJRU5ErkJggg==

"
	tablelist_adwaita_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAUElE
QVQ4T52LQQoAIAgEe3rHfm1tEMSgKS3MwcFpZvaFKytQDNwhFFoppjhLY4p7z5iCC2MKri/4s6G4
F0aC4uwZCQotjQRFKRKurODKHGsTLGRi5/Yt6JoAAAAASUVORK5CYII=


"
	tablelist_adwaita_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAS0lE
QVQ4T53LQQoAIAwDQX/t1Z9XcxO72qAwQhfSIuILRgdGB0YHRoe+vlRvLGlYjdNI9oPGOJIz7OPr
SChq8BwJRgdGB0YHxlq0CSfbYptH4iuzAAAAAElFTkSuQmCC

"
    } else {
	tablelist_adwaita_collapsedImg put "
R0lGODlhDgAOAMIEAAAAAE1NTaCgoKampv///////////////yH5BAEKAAAALAAAAAAOAA4AAAMb
CLrc/kvAFuRUoV6Q9ezeAw5fRpbnl07r5m4JADs=
"
	tablelist_adwaita_expandedImg put "
................................................................................
	variable arc_${mode}Img \
		 [image create photo tablelist_arc_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_arc_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAGxJREFUKFONj0EKgDAMBPcVIl69iV7FF3hR/P9v4kYqSWlKGxhINh1IISIfrIms
/9zCGmAmD9n9gxr5AGxJPnweUQadchyaXD07DBXWRW4yhPswBM4kjdFeKYMOSckHk8LzPNYAC9F/
NSURwQtLqlH7qKJBUAAAAABJRU5ErkJggg==
"
	tablelist_arc_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx

jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAHRJREFUKFOdjUsKgDAMBbNwqzs/ZxHXFVG8/21i0iaaaECxMLSZl/IAEX8Ryi/w
aYkpChU6I+/dHDTESiQbmIUkee28hNzK4ezC8mkjButzdj4AOlnKzXzL3OuOxQ9X806ETcpTlOaF
CJuUWAJUkbeE8h2EA9B0S9ShJNYAAAAAAElFTkSuQmCC
"
	tablelist_arc_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAGdJREFUKFON0cEJgDAQRNH0YgfixSIsQgTLsBQbEC82OJmFRMa4xhzeYT/MaQOA
bKRZ7io9Jrpok/apDAs1jb3YNHYjrVQduzE56KRO2u0Vkp1sNEh78OLvyJQhj3ppLj3s+U0jACEC
E06wdZnzTFcAAAAASUVORK5CYII=


"
	tablelist_arc_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAHBJREFUKFOdzsEJgDAQRNHc7ELsQAQ7FCxD8OJFvNjgOiNu2IQBxcML5Ou6JjP7
RcYvePQwxyhMwPdy49HBAavHygJ83oaWf5Vf26Ee9qExtFu8cDhu9qHhuRfq4JtPkJucihzeQG5y
MkIjWkHGd5YueOiwF1W1TAUAAAAASUVORK5CYII=


"
	tablelist_arc_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAHNJREFUKFONz10KgCAQBOA5SheInnvvCkEdIuggPRdBd91m+2EVV1T4wB0dUIjI
g6un6Z9LbAMMdNESXsiJB2D+ymuYe9KgsuyHVs4+2w0V104HNe65GwIbndR55yoNKkoqHt6SPq8N
c49tgJH0X8WSiOAGGZpYKjZmcSEAAAAASUVORK5CYII=



"
	tablelist_arc_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAHRJREFUKFOdjUsKgDAMRLP0DHoDRTycCy+hLtxIwbvG6Sc21YBi4EH7JkOImX9h
yi/4acFkhQJm9Hs3Rw3YwaIDtTCnvC58CrsUrkUYSw4M2ofseuRyuIyRS73saMpPLh/AvCQ8RSxv


wLwk2JKosrzGlO8wnchaUd6BhPzVAAAAAElFTkSuQmCC
"
	tablelist_arc_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAG5JREFUKFONz8EJgDAQRNF0ZQtevNiIhYggVuLFjmxB8LbOQiKTOBoX3mG/LJhg
ZkkPE+2feBnAZwXuUhlm8Nmg/JZR8dexjLCAz+tvyxgdcEJD7fYI0Q5+1FHLqFg9cmVIRy01iZcR

/F3VIzMLF8edtpTOwib0AAAAAElFTkSuQmCC
"
	tablelist_arc_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAHJJREFUKFOdzsEJgDAQRNEUYCWCVYjgxY692It49CYIHtYZcWUTBhSFF8iXZZPM
7BcZv+DRwRSjMEIbG48Gdlg8Fmbg/zq056ncukE5zKEDhtAu8cLhuNk39fc9UwbfzE9ucipyeAW5

yckIlWgZGd9ZOgFo1rYdzDp3awAAAABJRU5ErkJggg==
"
    } else {
	tablelist_arc_collapsedImg put "
R0lGODlhDgAKAOMKAAAAALGxsbOzs7S0tLm5ucfHx8nJydPT09XV1eXl5f//////////////////
/////yH5BAEKAA8ALAAAAAAOAAoAAAQc8L10pL03GMxlKB33hZhGWoNwPoR6tit8IsMZAQA7
"
	tablelist_arc_expandedImg put "
................................................................................
"
    tablelist_baghira_expandedImg put "
R0lGODlhDQAIAIABAAAAAP///yH5BAEKAAEALAAAAAANAAgAAAIOjI+pywcPwYqSwWYqxgUAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor1TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor1TreeImgs {} {


    foreach mode {collapsed expanded collapsedSel expandedSel} {
	variable bicolor1_${mode}Img \
		 [image create photo tablelist_bicolor1_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_bicolor1_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwYtcCg47AAAACpJREFUGNNjYKAA1BOjiIlUTUyk
2sREqvOYSPUTPg2NpGhoJMVJjVSNBwD8+gSMwdvvHwAAAABJRU5ErkJggg==
"
	tablelist_bicolor1_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwkTNtE5iAAAAC9JREFUGNNjYBh0gJGBgaGeCHWN
yBoYCGhqRLeBAY+mRmxOYsChqZFYf9UPbLACACL9BIS+a6kZAAAAAElFTkSuQmCC
"
    } else {
	tablelist_bicolor1_collapsedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIUjI8IybB83INypmqjhGFzxxkZ
UgAAOw==
"
	tablelist_bicolor1_expandedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIQjI+py+D/EIxpNscMyLyHAgA7
"
    }

    tablelist_bicolor1_collapsedSelImg put "
R0lGODlhDAAKAIAAAP///////yH5BAEKAAEALAAAAAAMAAoAAAIUjI8IybB83INypmqjhGFzxxkZ
UgAAOw==
"
    tablelist_bicolor1_expandedSelImg put "
R0lGODlhDAAKAIAAAP///////yH5BAEKAAEALAAAAAAMAAoAAAIQjI+py+D/EIxpNscMyLyHAgA7
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor2TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor2TreeImgs {} {


    foreach mode {collapsed expanded collapsedSel expandedSel} {
	variable bicolor2_${mode}Img \
		 [image create photo tablelist_bicolor2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_bicolor2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwwFv3J4nAAAADJJREFUKM9jYKASaCJWIRO5mpnI
tZmJXGczketnJnIDjBiNdeRorCPHqXXkBE4dzVIOAPKWBZkKDbb3AAAAAElFTkSuQmCC
"
	tablelist_bicolor2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEw4I8/VmowAAADZJREFUKM9jYBgygJGBgaGeBPWN
yBoZiNTciG4jAxGaG7E5lYGA5kZcfmTAo7mR1ECrZxg+AAC4iAWFJSdDXQAAAABJRU5ErkJggg==
"
    } else {
	tablelist_bicolor2_collapsedImg put "
R0lGODlhDgAMAIABAH9/f////yH5BAEKAAEALAAAAAAOAAwAAAIXjI9poA3c0IMxTOpuvS/yPVVW
J5KlWAAAOw==
"
	tablelist_bicolor2_expandedImg put "
R0lGODlhDgAMAIABAH9/f////yH5BAEKAAEALAAAAAAOAAwAAAIUjI+pywoPI0AyuspkC3Cb6YWi
WAAAOw==
"
    }

    tablelist_bicolor2_collapsedSelImg put "
R0lGODlhDgAMAIAAAP///////yH5BAEKAAEALAAAAAAOAAwAAAIXjI9poA3c0IMxTOpuvS/yPVVW
J5KlWAAAOw==
"
    tablelist_bicolor2_expandedSelImg put "
R0lGODlhDgAMAIAAAP///////yH5BAEKAAEALAAAAAAOAAwAAAIUjI+pywoPI0AyuspkC3Cb6YWi
WAAAOw==

"
}

#------------------------------------------------------------------------------
# tablelist::bicolor3TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor3TreeImgs {} {


    foreach mode {collapsed expanded collapsedSel expandedSel} {
	variable bicolor3_${mode}Img \
		 [image create photo tablelist_bicolor3_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_bicolor3_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExAQNNjBKgAAADtJREFUKM9jYKABqCdHExM1DGKi
houYqOE1JmqEERM1ApuJGrFGrCGNlBrSSKl3GikN2EZKo7iR7nkHAKniBpTspddsAAAAAElFTkSu
QmCC
"
	tablelist_bicolor3_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExIRcemTPgAAAD5JREFUKM/t0jsOACAIRMHnycne
3J6IgJa6PRN+8OMzADuok0doQlp1QgNSNA5FSLudUICULZYE0s3l7NGPnffUBoaD5FpzAAAAAElF
TkSuQmCC
"
    } else {
	tablelist_bicolor3_collapsedImg put "
R0lGODlhEQAOAIABAH9/f////yH5BAEKAAEALAAAAAARAA4AAAIdjI+ZoH3AnIJRPmovznTL7jVg
5YBZ0J0opK4tqhYAOw==
"
	tablelist_bicolor3_expandedImg put "
R0lGODlhEQAOAIABAH9/f////yH5BAEKAAEALAAAAAARAA4AAAIYjI+py+1vgJx0pooXtmy/CgVc
CITmiR4FADs=
"
    }

    tablelist_bicolor3_collapsedSelImg put "
R0lGODlhEQAOAIAAAP///////yH5BAEKAAEALAAAAAARAA4AAAIdjI+ZoH3AnIJRPmovznTL7jVg
5YBZ0J0opK4tqhYAOw==

"
    tablelist_bicolor3_expandedSelImg put "
R0lGODlhEQAOAIAAAP///////yH5BAEKAAEALAAAAAARAA4AAAIYjI+py+1vgJx0pooXtmy/CgVc
CITmiR4FADs=
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor4TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor4TreeImgs {} {


    foreach mode {collapsed expanded collapsedSel expandedSel} {
	variable bicolor4_${mode}Img \
		 [image create photo tablelist_bicolor4_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_bicolor4_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAYAAACw50UTAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExUCuhZEJwAAAEdJREFUOMu91IsNACAIQ0HSxU03
dwf1ZIBH6IeZz7NegSIXRF4QKVGkB5EmR6YoMqaRPTiBV8GrZKkytCqKVSWqqv8VmP/zDd6/CJzv
kRcqAAAAAElFTkSuQmCC


"
	tablelist_bicolor4_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAYAAACw50UTAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExY6uTmvegAAAExJREFUOMvtlNsNACAIA8/JSTd3
ApWHfmjsAD1SCvD1lBpgG3w0MqcI0GxyCgCtYiEJkCdzEgB5F0oQoEhbCAAUrSJOgE7cgv13cI86
Y04IiOwcRtoAAAAASUVORK5CYII=


"
    } else {
	tablelist_bicolor4_collapsedImg put "
R0lGODlhFwASAIABAH9/f////yH5BAEKAAEALAAAAAAXABIAAAIojI+pCusL2pshSgotznoj23kV
GIkjeWFoSK1pi5qxDJpGbZ/5/cp5AQA7

"
	tablelist_bicolor4_expandedImg put "
R0lGODlhFwASAIABAH9/f////yH5BAEKAAEALAAAAAAXABIAAAIijI+py+0Po3Sg2ovrylyzjj2g
J3YTNxlhqpJsALzyTNdKAQA7





"



    }

    tablelist_bicolor4_collapsedSelImg put "
R0lGODlhFwASAIAAAP///////yH5BAEKAAEALAAAAAAXABIAAAIojI+pCusL2pshSgotznoj23kV
GIkjeWFoSK1pi5qxDJpGbZ/5/cp5AQA7

"
    tablelist_bicolor4_expandedSelImg put "
R0lGODlhFwASAIAAAP///////yH5BAEKAAEALAAAAAAXABIAAAIijI+py+0Po3Sg2ovrylyzjj2g
J3YTNxlhqpJsALzyTNdKAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::blueMentaTreeImgs
#------------------------------------------------------------------------------
proc tablelist::blueMentaTreeImgs {} {
................................................................................
	variable blueMenta_${mode}Img \
		 [image create photo tablelist_blueMenta_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_blueMenta_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEJJREFUKFNj+P//P1EYwWBgEEeWQMcIBgNDMhBnIksiYwQDovASLsUIBkIhVsW4
FIKwGTEKiTKRKDcS5Ws84fifAQDpge0RK469/gAAAABJRU5ErkJggg==
"
	tablelist_blueMenta_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx

jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEtJREFUKFONjNEJACAIBZ3EKRqqvtq1hcwkDPMRBQd5HpKIfAElAkrEeqz0B2zh
rqsyAM0v+ifHHoXQhhOHyHZJEJXbmUcSAWVGaALoU+1uRfEIrwAAAABJRU5ErkJggg==
"
	tablelist_blueMenta_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAENJREFUKFNj+P//P1EYmSODxMbAyJwKIG5A4qNgZA5IIQhgVYzMgSkEAQzFyBxk
hSDgCMQEFRJlIlFuJMrXeMLxPwMAd106nOlvcTEAAAAASUVORK5CYII=


"
	tablelist_blueMenta_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAElJREFUKFNj+P//P1EYqyA2jFUQGwYRykDcjgeD5OEm1gIxNtAAxHATcSmGKwJh
ZIUgDFOMogiEUThQbI9FDKtCrBirICb+zwAAb6M7CAs6hmIAAAAASUVORK5CYII=


"
	tablelist_blueMenta_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEJJREFUKFNj+P//P1EYwWBgEEeWQMcIBgNDMhBnIksiYwQDovASLsUIBkIhVsW4
FIKwGTEKiTKRKDcS5Ws84fifAQDpge0RK469/gAAAABJRU5ErkJggg==


"
	tablelist_blueMenta_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEtJREFUKFONjNEJACAIBZ3EKRqqvtq1hcwkDPMRBQd5HpKIfAElAkrEeqz0B2zh
rqsyAM0v+ifHHoXQhhOHyHZJEJXbmUcSAWVGaALoU+1uRfEIrwAAAABJRU5ErkJggg==


"
	tablelist_blueMenta_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEJJREFUKFNj+P//P1EYwWBgEEeWQMcIBgNDMhBnIksiYwQDovASLsUIBkIhVsW4
FIKwGTEKiTKRKDcS5Ws84fifAQDpge0RK469/gAAAABJRU5ErkJggg==


"
	tablelist_blueMenta_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEtJREFUKFONjNEJACAIBZ3EKRqqvtq1hcwkDPMRBQd5HpKIfAElAkrEeqz0B2zh
rqsyAM0v+ifHHoXQhhOHyHZJEJXbmUcSAWVGaALoU+1uRfEIrwAAAABJRU5ErkJggg==


"
    } else {
	tablelist_blueMenta_collapsedImg put "
R0lGODlhCgAKAMIFAAAAAC0tLZaWlpycnMnJyf///////////yH5BAEKAAcALAAAAAAKAAoAAAMU
eLrcfkM8GKQbod4cSMPaF37W5CQAOw==
"
	tablelist_blueMenta_expandedImg put "
................................................................................
R0lGODlhCgAKAKEDAAAAAC0tLZCQkP///yH5BAEKAAMALAAAAAAKAAoAAAIPnI+pe+IvUJhTURaY
3qwAADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::classic1TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic1TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic1_${mode}Img \
		 [image create photo tablelist_classic1_${mode}Img]
    }

    tablelist_classic1_collapsedImg put "
R0lGODlhDAAKAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAMAAoAAAIgnI8Xy4EhohTOwAhk
HVfkuEHAOFKK9JkWqp0T+DQLUgAAOw==
"
    tablelist_classic1_expandedImg put "
R0lGODlhDAAKAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAMAAoAAAIcnI8Xy4EhohTOwBnr
uFhDAIKUgmVk6ZWj0ixIAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic2TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic2TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic2_${mode}Img \
		 [image create photo tablelist_classic2_${mode}Img]
    }

    tablelist_classic2_collapsedImg put "
R0lGODlhDgAMAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAOAAwAAAInnI8Zy4whopThQAlm
NTdmak1ftA0QgKZZ2QmjwIpaiM3chJdm0yAFADs=
"
    tablelist_classic2_expandedImg put "
R0lGODlhDgAMAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAOAAwAAAIinI8Zy4whopThwDmr
uTjqwXUfBJQmIIwdZa1e66rx0zRIAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic3TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic3TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic3_${mode}Img \
		 [image create photo tablelist_classic3_${mode}Img]
    }

    tablelist_classic3_collapsedImg put "
R0lGODlhEQAOAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAARAA4AAAIwnI95we2Rgpi0Cris
xkZWYHGDR4GVSE4mharAC0/tFyKpsMq2lV+7dvoBdbbHI1EAADs=
"
    tablelist_classic3_expandedImg put "
R0lGODlhEQAOAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAARAA4AAAIrnI95we2Rgpi0Cris
xkbqyg3eN4UjaU7AygIlcn4p+Wb0Bd+4TYfi80gUAAA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic4TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic4TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic4_${mode}Img \
		 [image create photo tablelist_classic4_${mode}Img]
    }





    tablelist_classic4_collapsedImg put "















R0lGODlhFwASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAXABIAAAJGXI6pMe0hopxUMGeq
lvdpAGhdA1WgiGVmWI0qdbZpCbOUW4L6rkd4xAuyfisUhjaJ3WYf24RYM3qKsuNmA70+U4aF98At
AAA7


"
    tablelist_classic4_expandedImg put "
R0lGODlhFwASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAXABIAAAI9XI6pMe0hopxUMGeq
lvft3TXQV4UZSZkjymEnG6kRQNc2HbvjzQM5toLJYD8P0aI7IoHKIdEpdBkW1IO0AAA7

"
}

#------------------------------------------------------------------------------
# tablelist::dustTreeImgs
#------------------------------------------------------------------------------
proc tablelist::dustTreeImgs {} {
................................................................................
	variable menta_${mode}Img \
		 [image create photo tablelist_menta_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_menta_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEJJREFUKFNj+P//P1EYwWBgEEeWQMcIBgNDMhBnIksiYwQDovASLsUIBkIhVsW4
FIKwGTEKiTKRKDcS5Ws84fifAQDpge0RK469/gAAAABJRU5ErkJggg==
"
	tablelist_menta_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAAXNSR0IArs4c6QAAAARnQU1BAACx

jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAEtJREFUKFONjNEJACAIBZ3EKRqqvtq1hcwkDPMRBQd5HpKIfAElAkrEeqz0B2zh
rqsyAM0v+ifHHoXQhhOHyHZJEJXbmUcSAWVGaALoU+1uRfEIrwAAAABJRU5ErkJggg==
"
    } else {
	tablelist_menta_collapsedImg put "
R0lGODlhCgAKAMIFAAAAAC0tLZaWlpycnMnJyf///////////yH5BAEKAAcALAAAAAAKAAoAAAMU
eLrcfkM8GKQbod4cSMPaF37W5CQAOw==
"
	tablelist_menta_expandedImg put "
................................................................................
	variable mint2_${mode}Img \
		 [image create photo tablelist_mint2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_mint2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAAHdElNRQfgBQkTHSnMxpiBAAAAGnRFWHRTb2Z0
d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAABRSURBVChTpZGxCQAgDAR/fkdwMitXiYqFPsRE
Y3HFPRwEhYg8o44eLEDa/QQLUDt53zRYZlS8kGVGbsiyIjNk+Yyezws9hBkMWCKfe4s62gga8dTd
YGVViS0AAAAASUVORK5CYII=
"
	tablelist_mint2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOvgAADr4B6kKxwAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAYklE
QVQoU5XLQQqAMAxE0ZzBW/T+lxDciK49S5rUGiidZrDwFh3yRVV/gyMDRwaODBwZf8Wc5klcpkTU
Sw8Pg4LbRBBREk5Bux0+YwiDdjcNb7ivAodHkQ3tHzgycGTgmFOpl2jLGnIdx90AAAAASUVORK5C
YII=


"
	tablelist_mint2_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOvAAADrwBlbxySQAAAAd0SU1FB+AFCRMdKczGmIEAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5F
VCB2My41LjEwMPRyoQAAAFVJREFUKFOlkDEKwDAMA/N7736If+dZjYcOAlPF6XCEEzkIWQDGtKOC
xN33wRc6SMwMJyFJRREhQ5KKMlOGJG+kQpJf0fh5Vx+hgoLkJCjaUdGO32A9XVwfc0mdLjYAAAAA
SUVORK5CYII=


"
	tablelist_mint2_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOvQAADr0BR/uQrQAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAW0lE
QVQoU5XLwQ3AIAxDUbbPjckyRJbIOcg9VG1xsHp4SHzwqKrfaFRoVGhUaFSuY85ZZtbC+zYCPERE
ZeYN9+8AXpfnsBvAFvDR3dsB0HgaAI0KjQqNCo1nNRZ9ViCcGRAOXQAAAABJRU5ErkJggg==


"
    } else {
	tablelist_mint2_collapsedImg put "
R0lGODlhDQAOAMIFAAAAACEhIScnJ2VlZXV1df///////////yH5BAEKAAcALAAAAAANAA4AAAMc
eLrc/odAFsZUQdgZ8n6dB4XaKI4l90HS5b5HAgA7
"
	tablelist_mint2_expandedImg put "
................................................................................
	variable oxygen2_${mode}Img \
		 [image create photo tablelist_oxygen2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_oxygen2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsDFBwlCamtawAAAFVJREFUGNOtzbENQFAYReEv0UgM
YgEVlUQjEttYRfEqu1hBDKCxhuYt8L84za3OPfzAhDUqVXlb7GhwltQ7XDjySZgBL7ao2ONGQh0R
FzwlRRgxR6UPRPkJSYt8DiIAAAAASUVORK5CYII=
"
	tablelist_oxygen2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI

WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsDFB8qsjvjOQAAAFJJREFUGNPF0CsKgEAABNAXF7yO
aU2CZRG8jcmbmDyU2LV4Dcsm02rQaTMwzIc/0aK/aQldiTnhQMy8xo6hNH3EhgYrpqf1Z5xY3mwP
uUH1ydMXx2UJYO9Vo0sAAAAASUVORK5CYII=
"
	tablelist_oxygen2_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI


WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsDFB4pMimDwgAAAHZJREFUGNOlkC0Og2AQRN82cJ9P
VKFJECScYR1J0SiOgcTsHRBcArFn6B1auzWIym46ZtTL/MC/Uo9WPYYsd7u8Blb1WDKwfKXfAQNO
YLIir1+TsSInMAId8MjURj0aYAN2YM0c1qvHUz3mzObq8jcwWpEjA38Arr8gUfq42wkAAAAASUVO
RK5CYII=
"
	tablelist_oxygen2_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AsDFCA0EOr0ZgAAAHJJREFUGNPF0C0OwkAQBtC3BEE4
TQUKR4IhpHeYCiyOI3AF/lQdZ+gt1nOYxawgmFbBqMmXvEm+4W8TuWwil/1XtotctmN2hgWukcu6
whVuWI7hVMEJHQ6449k36TwJ1wMPtBj6JsWUyvOP/YgXLj959hvQPxzKCnzYTQAAAABJRU5ErkJg
gg==


"
    } else {
	tablelist_oxygen2_collapsedImg put "
R0lGODlhDwAIAIABAAAAAP///yH5BAEKAAEALAAAAAAPAAgAAAIQjI8ZAOrcXIJysmoo1jviAgA7
"
	tablelist_oxygen2_expandedImg put "
R0lGODlhDwAIAIABAAAAAP///yH5BAEKAAEALAAAAAAPAAgAAAIRjI+pawDnmHuThRntzfr2fxQA
................................................................................
    tablelist_phase_expandedImg put "
R0lGODlhDwAKAKECAAAAAMfHx////////yH5BAEKAAAALAAAAAAPAAoAAAIRhI+pyx0P4YqS0WYq
BmH7jxQAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::plain1TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain1TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable plain1_${mode}Img \
		 [image create photo tablelist_plain1_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_plain1_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwYtcCg47AAAACpJREFUGNNjYKAA1BOjiIlUTUyk
2sREqvOYSPUTPg2NpGhoJMVJjVSNBwD8+gSMwdvvHwAAAABJRU5ErkJggg==
"
	tablelist_plain1_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwkTNtE5iAAAAC9JREFUGNNjYBh0gJGBgaGeCHWN
yBoYCGhqRLeBAY+mRmxOYsChqZFYf9UPbLACACL9BIS+a6kZAAAAAElFTkSuQmCC

"
    } else {
	tablelist_plain1_collapsedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIUjI8IybB83INypmqjhGFzxxkZ
UgAAOw==
"
	tablelist_plain1_expandedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIQjI+py+D/EIxpNscMyLyHAgA7
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain2TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain2TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable plain2_${mode}Img \
		 [image create photo tablelist_plain2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_plain2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEwwFv3J4nAAAADJJREFUKM9jYKASaCJWIRO5mpnI
tZmJXGczketnJnIDjBiNdeRorCPHqXXkBE4dzVIOAPKWBZkKDbb3AAAAAElFTkSuQmCC


"
	tablelist_plain2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAMCAYAAABSgIzaAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKEw4I8/VmowAAADZJREFUKM9jYBgygJGBgaGeBPWN
yBoZiNTciG4jAxGaG7E5lYGA5kZcfmTAo7mR1ECrZxg+AAC4iAWFJSdDXQAAAABJRU5ErkJggg==


"
    } else {
	tablelist_plain2_collapsedImg put "
R0lGODlhDgAMAIABAH9/f////yH5BAEKAAEALAAAAAAOAAwAAAIXjI9poA3c0IMxTOpuvS/yPVVW
J5KlWAAAOw==
"
	tablelist_plain2_expandedImg put "
R0lGODlhDgAMAIABAH9/f////yH5BAEKAAEALAAAAAAOAAwAAAIUjI+pywoPI0AyuspkC3Cb6YWi
WAAAOw==

"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain3TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain3TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable plain3_${mode}Img \
		 [image create photo tablelist_plain3_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_plain3_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExAQNNjBKgAAADtJREFUKM9jYKABqCdHExM1DGKi
houYqOE1JmqEERM1ApuJGrFGrCGNlBrSSKl3GikN2EZKo7iR7nkHAKniBpTspddsAAAAAElFTkSu
QmCC



"
	tablelist_plain3_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAOCAYAAADJ7fe0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExIRcemTPgAAAD5JREFUKM/t0jsOACAIRMHnycne
3J6IgJa6PRN+8OMzADuok0doQlp1QgNSNA5FSLudUICULZYE0s3l7NGPnffUBoaD5FpzAAAAAElF


TkSuQmCC
"
    } else {
	tablelist_plain3_collapsedImg put "
R0lGODlhEQAOAIABAH9/f////yH5BAEKAAEALAAAAAARAA4AAAIdjI+ZoH3AnIJRPmovznTL7jVg
5YBZ0J0opK4tqhYAOw==

"
	tablelist_plain3_expandedImg put "
R0lGODlhEQAOAIABAH9/f////yH5BAEKAAEALAAAAAARAA4AAAIYjI+py+1vgJx0pooXtmy/CgVc
CITmiR4FADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain4TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain4TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable plain4_${mode}Img \
		 [image create photo tablelist_plain4_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_plain4_collapsedImg put "






iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAYAAACw50UTAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExUCuhZEJwAAAEdJREFUOMu91IsNACAIQ0HSxU03
dwf1ZIBH6IeZz7NegSIXRF4QKVGkB5EmR6YoMqaRPTiBV8GrZKkytCqKVSWqqv8VmP/zDd6/CJzv
kRcqAAAAAElFTkSuQmCC
"





	tablelist_plain4_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABcAAAASCAYAAACw50UTAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AUKExY6uTmvegAAAExJREFUOMvtlNsNACAIA8/JSTd3
ApWHfmjsAD1SCvD1lBpgG3w0MqcI0GxyCgCtYiEJkCdzEgB5F0oQoEhbCAAUrSJOgE7cgv13cI86
Y04IiOwcRtoAAAAASUVORK5CYII=

"
























    } else {
	tablelist_plain4_collapsedImg put "
R0lGODlhFwASAIABAH9/f////yH5BAEKAAEALAAAAAAXABIAAAIojI+pCusL2pshSgotznoj23kV
GIkjeWFoSK1pi5qxDJpGbZ/5/cp5AQA7

"
	tablelist_plain4_expandedImg put "
R0lGODlhFwASAIABAH9/f////yH5BAEKAAEALAAAAAAXABIAAAIijI+py+0Po3Sg2ovrylyzjj2g
J3YTNxlhqpJsALzyTNdKAQA7
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plastikTreeImgs
#------------------------------------------------------------------------------
................................................................................
	variable ubuntu2_${mode}Img \
		 [image create photo tablelist_ubuntu2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntu2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAA7DAAAOwwHHb6hkAAAAB3RJTUUH4AsDFAkb/31W1AAAAFhJREFUGNONj7sNgDAMBc/uwhwZ
j5IxKLMLy7BHykdDRGLxO8mF9U7PsnEiiYiZ4d2S+WADsiTaAFcDMAElNnloSVHym1MJWN+ECixP
QgVmSfvvL3qGsAkHUqArtr/xO8MAAAAASUVORK5CYII=
"
	tablelist_ubuntu2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI

WXMAAA7DAAAOwwHHb6hkAAAAB3RJTUUH4AsDFBAHcHyjgwAAAEhJREFUGNO9zLERQEAYBeGPC1Qg
FGlGQwKBAoyCnPTmupJI/pCQDd/uPD6nwYLpxeeEigE9uhAXDmwphoIxohYn9qfLFbN/uQEwZAfr
O7QC9wAAAABJRU5ErkJggg==
"
	tablelist_ubuntu2_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAA7DAAAOwwHHb6hkAAAAB3RJTUUH4AsDFAw3sNLOcgAAAF9JREFUGNN9kLENgDAQA89IEKWh
gQkYmH2YgJmoTEGCwgvF1cu+4vSyTS9DPSRNXQBYJI09IAM5Qi2A7aNAqS0popuf7MD69gE4gRlI

v0AcbX8cDFy2r9ZL9VGSUhwBbiXCRsSA6M6gAAAAAElFTkSuQmCC
"
	tablelist_ubuntu2_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI
WXMAAA7DAAAOwwHHb6hkAAAAB3RJTUUH4AsDFBELYNHe6QAAAE1JREFUGNO9zCEKgFAABNFZEAwi
iOAFPIPd63sai+FjGosfk1FfnWXhcwEmoH/pByrAoC4+VqBVyT0gyajOQJdkU0+Apn6pexKAUuNP
LsjVKWqydBSbAAAAAElFTkSuQmCC


"
    } else {
	tablelist_ubuntu2_collapsedImg put "
R0lGODlhCAAKAMIFAAAAAD4+PkdHR0hISE9PT////////////yH5BAEKAAcALAAAAAAIAAoAAAMS
eLrcO+4E4cJsNhBmKfcMFDUJADs=
"
	tablelist_ubuntu2_expandedImg put "
................................................................................
	variable ubuntu3_${mode}Img \
		 [image create photo tablelist_ubuntu3_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntu3_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAWUlE
QVQoU2P4//8/yRiVw8DgDMQSyGLYMCqHgSEGiFcT0ojKgWg6TEgjKgehCa9GVA6qJpwaUTmYmrBq
pIkmkp1HckDg1ADCqByIJrwaQBiVQ04yIg7/ZwAAgQKZuDdqxHAAAAAASUVORK5CYII=
"
	tablelist_ubuntu3_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz

AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAXUlE
QVQoU5XLwQ3AIAxDUcZgLMbobkzCVGmSFhCKhQHpH7DykohcB0cWHFlwZNkr2nNY6ShrVWsku8mO
fsngAAMRuIAF+SfCAPwuDBNC4Ddw/CAEFhxZcGTBcZ+kF8WCmsIy4DnwAAAAAElFTkSuQmCC
"
	tablelist_ubuntu3_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAXUlE
QVQoU62SywnAIBAFLSVdWYcVp5TNziGweX5wgw/m4MCAiMXM0qioch6iojm3cwXXoYKILUMVb8Sm
oYoYsWH4OTgasS6MARyJ0tdLP8Q0ABVEywBU/PpGG1h5AHZuQvcmAx5DAAAAAElFTkSuQmCC


"
	tablelist_ubuntu3_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAXUlE
QVQoU5XOgQmAMBAEwZRidfZilZby/koSjDlyKozg8QuWiPhNjo4cHTk6vPZ0fMTtHW3pTO7hhtv+

ey7sAVq0CocAzwjvcAowfFQtlAGmoeJYBpCjI0dHjmtRLiHfREV2rBj7AAAAAElFTkSuQmCC
"
    } else {
	tablelist_ubuntu3_collapsedImg put "
R0lGODlhDQAOAMIFAAAAADw8PFRUVKOjo7y8vP///////////yH5BAEKAAcALAAAAAANAA4AAAMf
eLrcR84NEdkItJ6LNe/RBzZiRgaoeY4SK6kRpM1KAgA7
"
	tablelist_ubuntu3_expandedImg put "
................................................................................
    }
}

#------------------------------------------------------------------------------
# tablelist::ubuntuMateTreeImgs
#------------------------------------------------------------------------------
proc tablelist::ubuntuMateTreeImgs {} {
    foreach mode {collapsed expanded collapsedSel expandedSel
		  collapsedAct expandedAct collapsedSelAct expandedSelAct} {
	variable ubuntuMate_${mode}Img \
		 [image create photo tablelist_ubuntuMate_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntuMate_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADNJREFUGFdj+P//P04MIRgYRNElwOJggoEhBoiT8EkeRleALgnCRrgkcerEaScW
1/5nAAAEbX5FmgjJygAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_expandedImg put "

iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADxJREFUGFdj+P//P06MVRCGsQrCMAgEAHEGGg6ASUoA8WogPgzFILYEWBKqAqYA
LgGXRFIAl0CRxMT/GQDUC3iRKcgrYgAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_collapsedSelImg put "


iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADRJREFUGFdj+P//P04MY8ggC8IwjFEGxHUwQRhGlgQBFAXokiDgAMRYJXHqxGkn
Ftf+ZwAAuNGwE9a6YwIAAAAASUVORK5CYII=
"
	tablelist_ubuntuMate_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAD5JREFUGFdj+P//P06MVRCGsQrCMIgoA+LJaBgkBpY0AeKHQAwDIDZIDG4sTAFc
AoRhkjAFcAkQRpZEw/8ZACqWsUulTWk4AAAAAElFTkSuQmCC
"
	tablelist_ubuntuMate_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADNJREFUGFdj+P//P04MIRgYRNElwOJggoEhBoiT8EkeRleALgnCRrgkcerEaScW


1/5nAAAEbX5FmgjJygAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADxJREFUGFdj+P//P06MVRCGsQrCMAgEAHEGGg6ASUoA8WogPgzFILYEWBKqAqYA
LgGXRFIAl0CRxMT/GQDUC3iRKcgrYgAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADNJREFUGFdj+P//P04MIRgYRNElwOJggoEhBoiT8EkeRleALgnCRrgkcerEaScW
1/5nAAAEbX5FmgjJygAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAcAAAAICAYAAAA1BOUGAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAADxJREFUGFdj+P//P06MVRCGsQrCMAgEAHEGGg6ASUoA8WogPgzFILYEWBKqAqYA
LgGXRFIAl0CRxMT/GQDUC3iRKcgrYgAAAABJRU5ErkJggg==
"
    } else {
	tablelist_ubuntuMate_collapsedImg put "
R0lGODlhBwAIAMIFAAAAADw8PJ2dnaOjo83Nzf///////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcIy7ANUIgVLLXegIAOw==

"
	tablelist_ubuntuMate_expandedImg put "
R0lGODlhBwAIAMIFAAAAADw8PFRUVJeXl6+vr////////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcTiMOokQIgons+koAOw==

"
	tablelist_ubuntuMate_collapsedSelImg put "
R0lGODlhBwAIAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAHAAgAAAIMhG+BqRjvXgMyrmkK
ADs=

"
	tablelist_ubuntuMate_expandedSelImg put "
R0lGODlhBwAIAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAHAAgAAAIKhI+pwW0dEFMUFQA7
"
	tablelist_ubuntuMate_collapsedActImg put "
R0lGODlhBwAIAMIFAAAAADw8PJ2dnaOjo83Nzf///////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcIy7ANUIgVLLXegIAOw==
"
	tablelist_ubuntuMate_expandedActImg put "
R0lGODlhBwAIAMIFAAAAADw8PFRUVJeXl6+vr////////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcTiMOokQIgons+koAOw==
"
	tablelist_ubuntuMate_collapsedSelActImg put "
R0lGODlhBwAIAMIFAAAAADw8PJ2dnaOjo83Nzf///////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcIy7ANUIgVLLXegIAOw==
"
	tablelist_ubuntuMate_expandedSelActImg put "
R0lGODlhBwAIAMIFAAAAADw8PFRUVJeXl6+vr////////////yH5BAEKAAcALAAAAAAHAAgAAAMO
eLrcTiMOokQIgons+koAOw==

"
    }
}

#------------------------------------------------------------------------------
# tablelist::vistaAeroTreeImgs
#------------------------------------------------------------------------------
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAZElE
QVQoU2P4//8/A1GApgotgZgbwsQCkBRGAHE4EAuDeegATaEoEKcAsTRIAAUgK4SyQSbmA7EqiAMH
6AqhfAkgrgViQRAHDLCYKATE+E0EYhEgJuxGICbK10SHI35AnEIGBgDfPzypQe1LowAAAABJRU5E
rkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAASklE
QVQoU2P4//8/A1Fg8Cl0BOJyCBMKsCgEKboCxDfBPBhAUwhWFBERARLEqRCuCJ9CFEX4FIIcDpJA
xpVAjABYPIMdDJRCBgYA0sVCxaUivcEAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAY0lE
QVQoU2P4//8/A1GAdgpljnyfAsSGYA42gKTwExBfB2JnsAA6QFNYAMQvgTgSLIgMkBWC2EA6CYi/
gWiwBAygK4QqTgfi/0CsAZYEAbJMBGLi3AjERPmauHAkCIhTyMAAAJhFf793qI06AAAAAElFTkSu
QmCC
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAARklE
QVQoU2P4//8/A1FgkCmUOfK9Eog3QrkQgK4Qqug3EKNKICuEKWq6//s/ToXIinAqRFeET+FGkAQa
xu8ZnGCgFDIwAAAYyHMZpMy2ogAAAABJRU5ErkJggg==
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhCgAOAMIHAAAAAIKCgpCQkJubm6enp6ioqMbGxv///yH5BAEKAAcALAAAAAAKAA4AAAMa
eLrc/szAQwokZzx8hONH0HDemG3WI03skwAAOw==
"
	tablelist_${treeStyle}_expandedImg put "
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAfElE
QVQ4T6XSSwqAMAwE0NygYBUP4M4jeBK37l269upx0AgZKdag8NCZNogfUdWwYllTLGs4iEyQfFfC
QWQ2ne+fOFwDGRbo/ZrHAUN2bmCFwa/fONiQXSfYYPR7zjUKbshyCztk6in8uROO2DNB/O2Z0HeK
/xFfFct3Kgd7BgT8X0rnFQAAAABJRU5ErkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAABGdBTUEAALGPC/xhBQAAAAlwSFlz

AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAX0lE
QVQ4T5WLwQ3AIAzEWIWF+GcUBuwQnSaECqQqOTiI5Ed8clLVa6BkQMmAkgHlxC4bJXgvJiN4jDds
XnxyBCLSHx79g6PIBzRCwTZaBSwqfVxQYXQLlAwoGVDu0dQApYwcjGzIaS0AAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAABGdBTUEAALGPC/xhBQAAAAlwSFlz


AAAOwQAADsEBuJFr7QAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAjElE
QVQ4T5XSzQ1AQBAFYIVI1KAGFTi67tVFFSpQkj5cXDTAcbxJduWNbNg5fNl9wyN+KhFxyw7/ZId/
TKjXa4GWZzkmoLDDBh3P30yIpREOGPgYM0FLcQ1wwsTHExNSKe6HZr0E68znKBO4FHMPWgw8fzaK
S9j77qRXhvJnAv/bA/d38v8RpbLDb1LdInxaO2Da/xgAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAZUlE
QVQ4T5WQsQ2AMAwEMwhTMVI2yg7swQa0FCmMkbAURx+/Ka74s65xEZHfQMmAkgElA0pjO+5dabN3
Y+QLLkWnv7lhWFDPLqloDFLRHNAIBWG0CljU3uOC/MsjoGRAyYAyRsoDbx1o4rZ56f0AAAAASUVO

RK5CYII=
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhDQAQAMIHAAAAAIGBgYuLi5OTk56enqenp8XFxf///yH5BAEKAAcALAAAAAANABAAAAMg
eLrc/tCZuEqh5xJ6z4jdIUDhETzhiCofeWxg+UxYjSUAOw==
"
	tablelist_${treeStyle}_expandedImg put "
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAkklE
QVQ4T63Tqw6AMAwF0GocjwSBIdlv8B84LBKD4evHHVS0S3ltLDmB20JDYJD3PotZ/MIsfqED0QCl
rD3RgWhkjazf0eG8uYIJWtm7ogMG8LGGGTrZt+jAA/g8DFmgl9fEdBADOIchKzhZl3SIBnDNwQZF
3Dv6Kvz5BFjp7wAr/StA3j5gyTsx719IYRbf87QDkkXd7AZZ8UwAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz

AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAaklE
QVQ4T6WM0QnAIAwF3a4zOIl0z/50mjSBBkSukkeF+/D0XjOzX6BUQKmAUgGlAsoZP4cz6C1Ambzx
5dz0HqAMMu69x0UbmGN5YI2lAYrLA19xaWAXB5WBEZ82nGuYoFRAqYBSAWUdaw84XP55BTs9TwAA
AABJRU5ErkJggg==
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAkklE
QVQ4T6WTuw2AMAxEMwjLsAItJQ0l27AQ81BQQGlsyZF8kSG/4sncmTtFIgQi6sI1a3DNGkAMx7Mz
k/VygODwxZzMbP0/QGjBqnOxuy9ASFCnlNwy7d4DRCzQ51iy2XdSQNgC1dkSEGmBelJCzJjuBBBp
gYbbTlASFkDEAhOu/woabr8HTNdN7PsXWnDNcii8/8FGqvnrvTkAAAAASUVORK5CYII=



"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAAAcElE
QVQ4T6WSsQ2AIBQFGcQh7e3ciB1cwziGBcX3k0hCzEn+0+IKDu5VJDP7BUoFlAooFVAqoOyZtnN2
Mt1VUDbuuDh+5DcoKy1e9mLyQB+vhzjwjKUBisMDb3FoYBRHB3J9NODbP4iAUgGlAso4li4fLlnw
8CctEgAAAABJRU5ErkJggg==


"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhEAASAOMIAAAAAIaGhouLi5CQkJiYmKGhoaioqMPDw///////////////////////////
/////yH5BAEKAAAALAAAAAAQABIAAAQrEMhJq70426OrMd0EFiEAAkR4AkO3AoL2AkH2xvbUylLq
AiTVLMMpGY+ACAA7
"
................................................................................
"
	tablelist_${treeStyle}_expandedActImg put "
R0lGODlhEAASAMIFAAAAAB3E92HW+Xvd+4Lf+////////////yH5BAEKAAcALAAAAAAQABIAAAMj
eLrc/jDKSaeoJ4Qaxp4d8UWhKJUmhKbOyjKCJmsXZt/4kwAAOw==
"
    }
}























































#------------------------------------------------------------------------------
# tablelist::vistaAeroTreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::vistaAeroTreeImgs_200 {{treeStyle "vistaAero"}} {
    foreach mode {collapsed expanded collapsedAct expandedAct} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwAAADsABataJCQAAAAd0SU1FB98IEBUWORalREAAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5F
VCB2My41LjEwMPRyoQAAAJNJREFUOE+10zsKgDAQBNCt7fyAhY2Qa3gPO1tLGxtPHye4RdgNJpI1
8DBOwiBqyHtvLhnWSoa1dEC0QCvzL3RAtLJBrpXSwVPYwQajXC+hA5TytYcdJrknRwdcyvNQfMAc
78nRQVTK96H4BBfnb3QgSjlzcEEj11J08PeTYti+Uwzbrw/2/ykzPVH2Z99CMqzj6QYGRertj0pe
+AAAAABJRU5ErkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwAAADsABataJCQAAAAd0SU1FB98IEBUeBx8d0+MAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5F
VCB2My41LjEwMPRyoQAAAGtJREFUOE+tzMEJwCAQRFG7Sw1biaTPXFLNxoUIi3w9OArv4Ii/uPtx
OKpwVOGowlGF46idq6n0RnDM/uDTvPROcOx60Mziokdz8Eh0DMpRCkrRWXA7ugqG3WiNjwt3/riC
owpHFY4qHDVePsGgC4kbm9dDAAAAAElFTkSuQmCC


"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwAAADsABataJCQAAAAd0SU1FB98IEBUVIS7kj9UAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5F
VCB2My41LjEwMPRyoQAAAJNJREFUOE+tkzEKgDAMRT2Il/EKro4ujt7GC3keBwcdYwIplPxAW5vh
UX0pj4J2IKJwXNmLK3sBMZ7vwczWtwCCgzdzMYud1QJCo5uuq53XAEJiukr4kdXuKQEiRfU5hfd8
TwkQeVTfm8MgbFSdhImZ7MwDhI1qMO6kf4ICiBTNgjFfX4Ox/ykTfqPi734EruyDhg9wSVOrXMoi
bgAAAABJRU5ErkJggg==



"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAABGdBTUEAALGPC/xhBQAAAAlwSFlz
AAAOwAAADsABataJCQAAAAd0SU1FB98IEBUbEg+3w00AAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5F
VCB2My41LjEwMPRyoQAAAHJJREFUOE+t0rENgCAURVEGcUh7OzdiB9cwjmFB8cVEEvJzpeD94hQ+
5FYkMwuHowpHFY4qHFU4estxr1WmM4Jj7wuWqn7yPx6OTQtuZ7GQaB/cr4CoD8pRCkrRv+B0dBRU
ovm9OBD3TmfgqMJRhaPG0gNGBmbxSYGdJwAAAABJRU5ErkJggg==


"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhFQASAOMIAAAAAIaGhouLi5CQkJiYmKGhoaioqMPDw///////////////////////////
/////yH5BAEKAAAALAAAAAAVABIAAAQvEMhJq7046w0Ox4bxWWIxUiJAnFIKDKwLCKcMBKNM5xNc
S6sYwMQChIoSD3LJjAAAOw==
"
................................................................................
CFUDzR1W9mWhMWIldg7ptV6tBdS2vXUkqKu86PmhgqaehlWZKFuOpnNQAAA7
"
    tablelist_${treeStyle}_expandedImg put "
R0lGODlhEQASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAARABIAAAIxnI+py60Bo4woiIuz
CFV7flheBhrieJXDiaoWAMfx1qFpbbv2He50v3NNhiqH8TgoAAA7
"
}




















#------------------------------------------------------------------------------
# tablelist::vistaClassicTreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::vistaClassicTreeImgs_200 {{treeStyle "vistaClassic"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAAKCAYAAAC9vt6cAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAExJREFUKFNj+P//P0UYwWBg0AFiB2RJYjCCAdQMxJGkGoLKIcMQTAESDcEuyMAQ
DDVEB5s8MsYUoMQFpGoGYQSDDM0gjGCQlQ7+MwAAiH+aQTbAbFoAAAAASUVORK5CYII=
"
	tablelist_win10_expandedImg put "

iVBORw0KGgoAAAANSUhEUgAAABAAAAAKCAYAAAC9vt6cAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAFRJREFUKFNj+P//P0UYqyApGATigbgDh2QHSB6bHAzDFO0H0WgSWMXRMYRAU4zO
x4cRDKgmHx8fEIcozSCMyiHBZhjGFCAQaOgYqyApGKsg8fg/AwClVaMkbFpt/wAAAABJRU5ErkJg
gg==
"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhEAAKAMIGAAAAAKampqysrL+/v9LS0tTU1P///////yH5BAEKAAcALAAAAAAQAAoAAAMZ
eLrcS8PJM0KcrV68NGdCUHyURXof+kFkAgA7
"
	tablelist_win10_expandedImg put "
R0lGODlhEAAKAMIHAAAAAEBAQExMTHd3d5+fn6CgoKGhof///yH5BAEKAAcALAAAAAAQAAoAAAMb
eLrc/oyMNsobYSqsHT8fBAZCJi7hqRhq6z4JADs=
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhEAAKAMIGAAAAAE7Q+VjS+Xra+5vh/Jri/P///////yH5BAEKAAcALAAAAAAQAAoAAAMZ
eLrcW8PJM0KcrV68NGdCQHyURXof+kFkAgA7
"
    tablelist_win10_expandedActImg put "
R0lGODlhEAAKAMIGAAAAABzE9yjH+FbS+YDb+4Lc+////////yH5BAEKAAcALAAAAAAQAAoAAAMb
eLrc/oyMNsobYSqsHT8fBAZCJi7hqVhq6zoJADs=
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_125
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_125 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABoAAAAMCAYAAAB8xa1IAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAF1JREFUOE+9lMEJwDAMA71QJ+gG3aD7D+JK0EKN9QlYCdxDl8eRTyIzt1BHxAGu
v5uiDkTA7Yh1YYppaYhJSaZjUn68IXKq+xWkJDj+F01HSBeGCKnDFCF12H6GjAdLF1EmW/vAagAA
AABJRU5ErkJggg==
"
	tablelist_win10_expandedImg put "


iVBORw0KGgoAAAANSUhEUgAAABoAAAAMCAYAAAB8xa1IAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAGNJREFUOE+9j4EJwCAMBDNqN3GUjuJosY8Eqf0UqUmFU3MfIoqq/gKVGVCZAdZx
cbLQQI4+lq1iQypOp+E1X6VvzjDPf2FcpqFzvcu9GMONkEfAUwT/xOBSpDC/A5UZUBmPSgPj7VvG
j4QeDgAAAABJRU5ErkJggg==
"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhGgAMAMIFAAAAAKamprW1tcTExNLS0v///////////yH5BAEKAAcALAAAAAAaAAwAAAMi
eLrc/ocISJ8Is2p1867dp4UiFQRDaWGqQ7bLCx/yLM1KAgA7
"
	tablelist_win10_expandedImg put "
R0lGODlhGgAMAMIHAAAAAEBAQEFBQWBgYICAgJ+fn6CgoP///yH5BAEKAAcALAAAAAAaAAwAAAMi
eLrc/jDKSct4w9A1wmXdtx0h543gWaKpcLLNCjfEbN9oAgA7
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhGgAMAMIGAAAAAE7Q+WfV+mjV+oHc+5ri/P///////yH5BAEKAAcALAAAAAAaAAwAAAMj
eLrc/qcISJ8Is2p1867X8GnhWAUBYVrY6nRuA8fLTCvSfSQAOw==
"
    tablelist_win10_expandedActImg put "
R0lGODlhGgAMAMIGAAAAABzE9z7M+F/U+oDb+4Hc+////////yH5BAEKAAcALAAAAAAaAAwAAAMi
eLrc/jDKSYl4otAlwmXdtx0h543gWaJpcLLNCjfDbN9oAgA7
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_150
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_150 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAB8AAAAQCAYAAADu+KTsAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAIZJREFUSEvNlbENgDAMBD0IDQNQswQLsP8gxi8R5OCvkOMQ6YocSOc0iajqNLgU
WZjPJgqRzTiN/f0tm35jJ77DjaEDRGFBFx86AJdFA1AJEHTxIQNQ2UDQxdMHoNJj63BxsLL/vkBl
w9ackyPkoulhwGVBGERRFAb95gc33Jy7/ZElr5rKBVezH+eTfDdNAAAAAElFTkSuQmCC
"
	tablelist_win10_expandedImg put "

iVBORw0KGgoAAAANSUhEUgAAAB8AAAAQCAYAAADu+KTsAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAJVJREFUSEvFkNkNgCAQRLcvCrAIfqzC9iwNmXiwukPiASvJ43i7YVBJKf0GlV5Q
6UXZiARdqHG37w7rJDJm5sx0bdCgvvWNrP4UjLBduEMfAK96wOc/sE724tMDcFY1U39L2VQCsCp3

+BacD5egGCNkl2Bghf3SLsGAS/uA5sGASoDAnsGAyp08BuZbQaUXVHpBpQ9JFsLONZHqquN4AAAA




































AElFTkSuQmCC






"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhHwAQAOMIAAAAAKamprOzs8jIyNLS0t7e3uPj4+Tk5P//////////////////////////
/////yH5BAEKAAAALAAAAAAfABAAAAQ3EMhJq7344M0lCUMnUkZghuM4mGCqsqjLrafc0a29CWyh
X7jYbxIcVopGIiw5KdWYk48QCtBAIwA7
"
	tablelist_win10_expandedImg put "

R0lGODlhHwAQAOMJAAAAAEBAQFtbW4mJiZ+fn6CgoLi4uMTExMXFxf//////////////////////
/////yH5BAEKAA8ALAAAAAAfABAAAAQ58MlJq7046807RRnoUUQwXENQjNIRvCeVvgf7zOaEx/Z+
vzmbDigA8oQSHAxp8TGbwafFIK1ar9IIADs=
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhHwAQAMIHAAAAAE7Q+WTV+oje+5ri/K3m/bbo/f///yH5BAEKAAcALAAAAAAfABAAAAM0
eLrc/tDASRUJo2pmgs/bNnhYKJKgSY2fWrGlOwlkIT9wei/53vQ+Hiq46LSIi4sOeZAgEwA7
"
    tablelist_win10_expandedActImg put "
R0lGODlhHwAQAOMJAAAAABzE9zjK+GnW+oDb+4Hc+5rh/Kfl/ajl/f//////////////////////
/////yH5BAEKAA8ALAAAAAAfABAAAAQ58MlJq7046807RRnoUUQwXENQjNIRvCeVvgf7zOaEx/Z+
vzmbDigA8oQSHAxp8TGbwafFIK1ar9IIADs=
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_200 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAACgAAAASCAYAAAApH5ymAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAJJJREFUSEvV1rENwCAMRFEGykDZfxGHKyyh45fYIpFe8+PiSkZEoPk91LtxnOOm
V+h/pz0s45LfdOJoA4XuOmAUHyh0Vw1j8oFCd5Uwrnyg0F0VjM4HCt1VwEh8oNDdaRiJjxO6Ow2j
82FCdxUwrnyY0F0VjMmHCd1Vwig+TOiuGsdLxskefvJYuPe5lTSSeq8YH+NamKxWvX/LAAAAAElF
TkSuQmCC
"
	tablelist_win10_expandedImg put "


iVBORw0KGgoAAAANSUhEUgAAACgAAAASCAYAAAApH5ymAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41
LjEwMPRyoQAAAJFJREFUSEvNzgEKgCAMhWFv2k272nKItdZvWDRa8Ik9J74iIqlhmAmGmRybUhZ7
MOPNnafaUh+qVuUHRvp8FVpSv71cR4OWn6/CSrbl+uCwpJ9TNPeVYzPxsD9XfuZr55+bAj5X9m6U
awBFiL8XhUMoZNGdKBgqX6qj2UgYdn+XUxhaf5ZTGGaCYSYYZoJhHlI2JrC2jqb+LJ4AAAAASUVO
RK5CYII=
"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhKAASAMIHAAAAAKampqenp6ioqNLS0tPT09TU1P///yH5BAEKAAcALAAAAAAoABIAAANB
eLq1/jDKV4KYOEMT+tUgJnRWaEajd67LQH7s6ZLxOne1TAZ5ePO9zC8o3BExN9gRklxKUiUnpKKS
RghR61W7SAAAOw==
"
	tablelist_win10_expandedImg put "

R0lGODlhKAASAMIGAAAAAEBAQEJCQp+fn6CgoKGhof///////yH5BAEKAAcALAAAAAAoABIAAAM/
eLrc/jDKSau9qlCN4QiCJARE5xBBGj5jyplLCzryCjM1ns43va+5HusXFA53KqMIaVNCWk3nMyqt
Wq/YrCUBADs=
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhKAASAMIFAAAAAE7Q+VHQ+Zrh/Jri/P///////////yH5BAEKAAcALAAAAAAoABIAAAM9
eLqz/jDKN4KYOMMarP6Z0HlgCYndZa4K2rGsG8CrTJv2/eU6xveSH/A0mg2DI9WRmFpGOCQnhBCV
Tq2LBAA7
"
    tablelist_win10_expandedActImg put "
R0lGODlhKAASAMIEAAAAAB3E94Db+4Hc+////////////////yH5BAEKAAAALAAAAAAoABIAAAM6
CLrc/jDKSau9alCNoQiBBHIdM4AghAZkqaxhA7vOvNi0vL57/sA4Xw0YE6qCxh8qSUkxn9CodFpK
AAA7
"
}

#------------------------------------------------------------------------------
# tablelist::winnativeTreeImgs
#------------------------------------------------------------------------------
proc tablelist::winnativeTreeImgs {} {
................................................................................
"
}

#------------------------------------------------------------------------------
# tablelist::createTreeImgs
#------------------------------------------------------------------------------
proc tablelist::createTreeImgs {treeStyle depth} {
    set baseWidth  [image width  tablelist_${treeStyle}_collapsedImg]
    set baseHeight [image height tablelist_${treeStyle}_collapsedImg]

    #
    # Get the width of the images to create for the specified depth and
    # the destination x coordinate for copying the base images into them
    #
    set width [expr {$depth * $baseWidth}]
    set x [expr {($depth - 1) * $baseWidth}]

    switch -regexp -- $treeStyle {
	^win10$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { set factor -8 }
		125 { set factor -16 }
		150 { set factor -19 }
		200 { set factor -24 }

	    }
	}
	^(vistaAero|win7Aero)$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { set factor  0 }
		125 { set factor -3 }
		150 { set factor -6 }
		200 { set factor -11 }

	    }
	}
	^(vistaClassic|win7Classic)$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { set factor -1 }
		125 { set factor -4 }
		150 { set factor -7 }
		200 { set factor -13 }

	    }
	}
	^ubuntu$					{ set factor -2 }
	^(mate|mint2)$					{ set factor -1 }
	^(blueMenta|menta|mint|newWave|ubuntu2)$	{ set factor  1 }
	^(ubuntu3|ubuntuMate)$				{ set factor  2 }

	^plasti.+$					{ set factor  3 }
	^(adwaita|aqua|arc)$				{ set factor  4 }
	^(oxygen.|phase|winnative|winxp.+)$		{ set factor  5 }
	^(baghira|klearlooks)$				{ set factor  7 }
	default						{ set factor  0 }





    }
    set delta [expr {($depth - 1) * $factor}]
    incr width $delta
    incr x $delta





    foreach mode {indented collapsed expanded} {
	image create photo tablelist_${treeStyle}_${mode}Img$depth \
	    -width $width -height $baseHeight
    }

    foreach mode {collapsed expanded} {
	tablelist_${treeStyle}_${mode}Img$depth copy \
	    tablelist_${treeStyle}_${mode}Img -to $x 0

	foreach modif {Sel Act SelAct} {
	    variable ${treeStyle}_${mode}${modif}Img
	    if {[info exists ${treeStyle}_${mode}${modif}Img]} {





|


<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<







 







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







 







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







 







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







 







|
|
|
<


|
<
<
>
|


|
<
<
<
>
>


|
<
<
<
>
>


|
<
<
<
>


|
<
<
<
>


|
<
<
<
>
>


|
<
<
<
>







 







|
|
|
|
<


|
>
|
|
<
<


|
<
<
<
<
>
>


|
<
<
<
<
>
>


|
<
<
<
<
>
>
>


|
<
<
<
>
>
|


|
<
<
<
>
|


|
<
<
<
>
|







 







|

|
>
>
|
|
|


<
<
|
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<



|





|

|
>
>
|
|
|


<
<
|
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
|
|

|
|
<
>




|

|
>
>
|
|
|


<
<
|
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
|
<
>

|
|
|




|

|
>
>
|
|
|


<
<
|
<
<
<
<
>
>

|
<
<
<
<
>
>

<
<
<
<
>
|
<
<
<
>
>
>
>
>
|
>
>
>


|
|
<
>

|
|
|







 







|
|
|
<


|
>
|
<
<


|
<
<
<
>
>


|
<
<
<
>
>


|
<
<
<
>
>


|
<
<
<
>
>


|
<
<
<
>
>


|
<
<
<
>
>







 







|

|

|
|


|



|






|

|

|
|


|
|
|

|
|
|




|

|

|
|


|
|
|

|
|
|




|

|

|
|


>
>
>
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
<
<
>
>

|
|
<
>







 







|
|
|
<


|
>
|
<
<







 







|
|
|
<
<


|
<
<
<
<
>
>


|
<
<
<
<
>
>


|
<
<
<
>
>







 







|
|
|
<


|
>
|
<
<


|
>
>
|
<
<
<


|
<
<
<
<
>
>







 







|

|

|
|




|
|
|
<

|
|
<
<
>


|



|






|

|

|
|




|
<
<
<
>
>

|
<
<
<
>
>


|
|
|

|
|
<
>





|

|

|
|




|
<
<
<
<
>
>
>

|
<
<
<
>
>



|
|
<
>

|
|
|





|

|

|
|




|
>
>
>
>
>
>
|
<
<
|

>
>
>
>
>
|
<
<
<
|
>

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

|
|
<
>

|
|
|







 







|
|
|
<


|
>
|
<
<


|
<
<
>
|


|
<
<
<
>
>







 







|
|
|
<


|
>
|
<
<


|
<
<
<
>
>


|
<
<
>
|







 







|
<







|
|
|
<


>
|
<
<
|


>
>
|
<
<
<


<
<
<
<
<
<
<
<
<
>
>
|

<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<


|
<
>


|
<
>


|
<
>


|
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
>







 







|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
<
<
<
<







 







|
|
|
|
<


|
>
|
<
<


|
>
>
|
|
<
<


|
<
<
<
>
|







 







|
|
|
|
<


|
>
|
<
<
<


|
<
<
<
<
>
>
>


|
<
<
<
<
>
>







 







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













|
|
|
|
<
<


|
<
<
<
<
>
>


|
<
<
<
<
<
>
>
>


|
<
<
<
<
>
>







 







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







 







|
|
|
<


>
|
|
<
<
<



|
|


|
|




|
|


|
|







 







|
|
|
<
<


>
>
|
<
<
<
<



|
|


|
|




|
|


|
|







 







|
|
|
|
<


>
|
|
|
<
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
>
>
>
>
>
>



|
|
<


>
|
<
<




|
|


|
|
|







 







|
|
|
|
<
<


>
>
|
<
<
<
<
<



|
|
<


>
|
<
<




|
|
|


|
|
<







 







<
<
<




|
|
>




|
|
|
|
>





|
|
|
|
>





|
|
|
|
>


|
|
|
<
>
|
|
|
|
<
>
>
>
>
>

|
<
<
>

>
>
>




<







1
2
3
4
5
6
7
8




































9
10
11
12
13
14
15
...
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
...
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
...
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
...
761
762
763
764
765
766
767
768
769
770

771
772
773


774
775
776
777
778



779
780
781
782
783



784
785
786
787
788



789
790
791
792



793
794
795
796



797
798
799
800
801



802
803
804
805
806
807
808
809
...
964
965
966
967
968
969
970
971
972
973
974

975
976
977
978
979
980


981
982
983




984
985
986
987
988




989
990
991
992
993




994
995
996
997
998
999



1000
1001
1002
1003
1004
1005



1006
1007
1008
1009
1010



1011
1012
1013
1014
1015
1016
1017
1018
1019
....
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077


1078




















1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097


1098





















1099
1100
1101
1102
1103

1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118


1119























1120

1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139


1140




1141
1142
1143
1144




1145
1146
1147




1148
1149



1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162

1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
....
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186

1187
1188
1189
1190
1191


1192
1193
1194



1195
1196
1197
1198
1199



1200
1201
1202
1203
1204



1205
1206
1207
1208
1209



1210
1211
1212
1213
1214



1215
1216
1217
1218
1219



1220
1221
1222
1223
1224
1225
1226
1227
1228
....
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345


1346
1347
1348
1349
1350

1351
1352
1353
1354
1355
1356
1357
1358
....
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551

1552
1553
1554
1555
1556


1557
1558
1559
1560
1561
1562
1563
....
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635


1636
1637
1638




1639
1640
1641
1642
1643




1644
1645
1646
1647
1648



1649
1650
1651
1652
1653
1654
1655
1656
1657
....
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777

1778
1779
1780
1781
1782


1783
1784
1785
1786
1787
1788



1789
1790
1791




1792
1793
1794
1795
1796
1797
1798
1799
1800
....
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846

1847
1848
1849


1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874



1875
1876
1877
1878



1879
1880
1881
1882
1883
1884
1885
1886
1887
1888

1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905




1906
1907
1908
1909
1910



1911
1912
1913
1914
1915
1916
1917

1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945


1946
1947
1948
1949
1950
1951
1952
1953



1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983

1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
....
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131

2132
2133
2134
2135
2136


2137
2138
2139


2140
2141
2142
2143
2144



2145
2146
2147
2148
2149
2150
2151
2152
2153
....
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182

2183
2184
2185
2186
2187


2188
2189
2190



2191
2192
2193
2194
2195


2196
2197
2198
2199
2200
2201
2202
2203
2204
....
2216
2217
2218
2219
2220
2221
2222
2223

2224
2225
2226
2227
2228
2229
2230
2231
2232
2233

2234
2235
2236
2237


2238
2239
2240
2241
2242
2243



2244
2245









2246
2247
2248
2249


















2250
2251
2252

2253
2254
2255
2256

2257
2258
2259
2260

2261
2262
2263
2264
















2265
2266
2267
2268
2269
2270
2271
2272
....
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308





2309
2310
2311
2312
2313
2314
2315
....
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345

2346
2347
2348
2349
2350


2351
2352
2353
2354
2355
2356
2357


2358
2359
2360



2361
2362
2363
2364
2365
2366
2367
2368
2369
....
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399

2400
2401
2402
2403
2404



2405
2406
2407




2408
2409
2410
2411
2412
2413




2414
2415
2416
2417
2418
2419
2420
2421
2422
....
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507


2508
2509
2510




2511
2512
2513
2514
2515





2516
2517
2518
2519
2520
2521




2522
2523
2524
2525
2526
2527
2528
2529
2530
....
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
....
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686

2687
2688
2689
2690
2691



2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
....
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728


2729
2730
2731
2732
2733




2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
....
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771

2772
2773
2774
2775
2776
2777

2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827

2828
2829
2830
2831


2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
....
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861


2862
2863
2864
2865
2866





2867
2868
2869
2870
2871

2872
2873
2874
2875


2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886

2887
2888
2889
2890
2891
2892
2893
....
3000
3001
3002
3003
3004
3005
3006



3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047

3048
3049
3050
3051
3052

3053
3054
3055
3056
3057
3058
3059


3060
3061
3062
3063
3064
3065
3066
3067
3068

3069
3070
3071
3072
3073
3074
3075
#==============================================================================
# Contains procedures that create various bitmap and photo images.  The
# argument w specifies a canvas displaying a sort arrow, while the argument win
# stands for a tablelist widget.
#
# Copyright (c) 2006-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================





































#------------------------------------------------------------------------------
# tablelist::flat6x4Arrows
#------------------------------------------------------------------------------
proc tablelist::flat6x4Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp6x4_width 6
#define triangleUp6x4_height 4
................................................................................
    image create bitmap triangleDn$w -data "
#define triangleDn11x6_width 11
#define triangleDn11x6_height 6
static unsigned char triangleDn11x6_bits[] = {
   0xff, 0x07, 0xfe, 0x03, 0xfc, 0x01, 0xf8, 0x00, 0x70, 0x00, 0x20, 0x00};
"
}

#------------------------------------------------------------------------------
# tablelist::flat13x7Arrows
#------------------------------------------------------------------------------
proc tablelist::flat13x7Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp13x7_width 13
#define triangleUp13x7_height 7
static unsigned char triangleUp13x7_bits[] = {
   0x40, 0x00, 0xe0, 0x00, 0xf0, 0x01, 0xf8, 0x03, 0xfc, 0x07, 0xfe, 0x0f,
   0xff, 0x1f};
"
    image create bitmap triangleDn$w -data "
#define triangleDn13x7_width 13
#define triangleDn13x7_height 7
static unsigned char triangleDn13x7_bits[] = {
   0xff, 0x1f, 0xfe, 0x0f, 0xfc, 0x07, 0xf8, 0x03, 0xf0, 0x01, 0xe0, 0x00,
   0x40, 0x00};
"
}

#------------------------------------------------------------------------------
# tablelist::flat15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::flat15x8Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp15x8_width 15
................................................................................
    image create bitmap triangleDn$w -data "
#define triangleDn11x6_width 11
#define triangleDn11x6_height 6
static unsigned char triangleDn11x6_bits[] = {
   0x03, 0x06, 0x06, 0x03, 0x8c, 0x01, 0xd8, 0x00, 0x70, 0x00, 0x20, 0x00};
"
}

#------------------------------------------------------------------------------
# tablelist::flatAngle13x7Arrows
#------------------------------------------------------------------------------
proc tablelist::flatAngle13x7Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp13x7_width 13
#define triangleUp13x7_height 7
static unsigned char triangleUp13x7_bits[] = {
   0x40, 0x00, 0xe0, 0x00, 0xb0, 0x01, 0x18, 0x03, 0x0c, 0x06, 0x06, 0x0c,
   0x03, 0x18};
"
    image create bitmap triangleDn$w -data "
#define triangleDn13x7_width 13
#define triangleDn13x7_height 7
static unsigned char triangleDn13x7_bits[] = {
   0x03, 0x18, 0x06, 0x0c, 0x0c, 0x06, 0x18, 0x03, 0xb0, 0x01, 0xe0, 0x00,
   0x40, 0x00};
"
}

#------------------------------------------------------------------------------
# tablelist::flatAngle15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::flatAngle15x8Arrows w {
    image create bitmap triangleUp$w -data "
#define triangleUp15x8_width 15
................................................................................
R0lGODlhCwAGAKUkAAAAADl1ml+DnlaRtWGZu2ievXaet2+gvXekvmKfw32owXu314Kqwoiswoey
yo21zIa+3JC2zZ26y5DB3ZjG34fE5ZHJ55/J4ZrN6KTC1KjN4qLb+azf+rrV5rDi/rrn/7/m+8Ps
/8vu/9Pw////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////yH5BAEKAD8ALAAAAAALAAYAAAYqQEFg
QCgcEApGQ/IzJBaQCeWi6fyujsrG8wmNruCHhfMRgc8RDOjMzrCDADs=
"
}

#------------------------------------------------------------------------------
# tablelist::photo13x7Arrows
#------------------------------------------------------------------------------
proc tablelist::photo13x7Arrows w {
    foreach dir {Up Dn} {
	image create photo triangle$dir$w
    }

    triangleUp$w put "
R0lGODlhDQAHAKUwAAAAAC1pjjVmhjJrjzppiD1qiTVtkTpwkTxwkUFsikRuilKPs16Rr1aStFyU
tWeHnGKKo2CWtXGhvXOy1Hu01YKovo2xxIC314S31JGyx5W1x5i2yJG915nE2p/F247K65bF4JbN
7Z3Q7Z7X9abJ3azX76fa9qzb9and+bLb8Lne8rHg+rLi+7fi+bnk+73l+v//////////////////
/////////////////////////////////////////////yH5BAEKAD8ALAAAAAANAAcAAAY4wJ9w
+BgajQoB5IhEMCQV5i9xiGBAHMuxYHBcRKdSJzMsDBqUkGnVSnk0P0JgMfmMUCzXS0XaBAEAOw==
"
    triangleDn$w put "
R0lGODlhDQAHAKUwAAAAAEaGqlWFpVyav2SVtGCew26tz3OkwXamwnuow36pw3Gv0nSz13iz0361
1IK00oa41Yy815m5zJO+2JjC2Z/D2J7E2obC4o/I5o3J6pTM65jM6J/P6ZzP657X9avH2anP5afS
6q7U6azV66fa9qnZ9Knd+bjV5rrc8bHg+rLi+7fi+b/g8rnk+7zl+sXh8v//////////////////
/////////////////////////////////////////////yH5BAEKAD8ALAAAAAANAAcAAAY4QEGg
YGg4IJEJxVL5/AgDxgWz4YRGotNve1hkPCZVy/XamhENDSm1YpnfCUenhHrbFQ+QfS/ZBwEAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::photo15x8Arrows
#------------------------------------------------------------------------------
proc tablelist::photo15x8Arrows w {
    foreach dir {Up Dn} {
	image create photo triangle$dir$w
................................................................................
	variable adwaita_${mode}Img \
		 [image create photo tablelist_adwaita_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_adwaita_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAPUlEQVQoz2NgGGgQT67GTcRqZsIi
FkyMZiYc4gQ1M+GRw6uZiYCLfpGjcTkUk6QRryZc0RFJTjxGMgxaAADyZAiN7tZZlQAAAABJRU5E
rkJggg==

"
	tablelist_adwaita_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAARUlEQVQoz+3LsQ2AIABE0UdciF0Y


wPFcyIRdqGjEGANorz+57h5/wwIS1offduxsQUZBfIsaNMFddIU9PER32DDsM/SVKvNODk3dEE6A
AAAAAElFTkSuQmCC
"
	tablelist_adwaita_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAASUlEQVQoz2NgGFDw////DGLVMqHx



vYjVzIRFjCjNTDjECWpmwiOHVzMTARd9JEfjckZGxuWkasSrCVs8bvr//38kOQkgkmHQAgDrkiAe
os9KvQAAAABJRU5ErkJggg==
"
	tablelist_adwaita_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAARUlEQVQoz+3PMQrAIBAF0dkzWlnl



ePZecGxCIJgotuLA7/YVC6ffQk3ANbkrEVFeEGCCO/TAAf5EXWpS67289LSal9GmNWXQI7TzaAnf
AAAAAElFTkSuQmCC
"
	tablelist_adwaita_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAM0lEQVQoz2NgGGgQT67G/+Rq/k+u



5v/kav5PrGYmAgYpkGNjPTlOrScncOrJiY4GhkELANUCE+t6oO0cAAAAAElFTkSuQmCC
"
	tablelist_adwaita_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAANElEQVQoz2NgGAV4QTkDA8N/Arie



HM315NhcT46z8WpiRuMfZWBgYGRgYDjIwMDQONIjHwD6aBnQtK1ZdwAAAABJRU5ErkJggg==
"
	tablelist_adwaita_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAOklEQVQoz2NgGFDw////DnI1/idL



838E6CBXI2ma/2MCnJqZCJj1gxwbG8hxagM5gdNATnQ0MAxaAAC4z2BIDOZwwgAAAABJRU5ErkJg
gg==
"
	tablelist_adwaita_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAKElEQVQoz2NgGAW4wf///8v/EwYN



5GhuIMfmBnKc3UCqnxtI1jRMAQD9zHJvoaewSgAAAABJRU5ErkJggg==
"
    } else {
	tablelist_adwaita_collapsedImg put "
R0lGODlhDgAOAMIEAAAAAE1NTaCgoKampv///////////////yH5BAEKAAAALAAAAAAOAA4AAAMb
CLrc/kvAFuRUoV6Q9ezeAw5fRpbnl07r5m4JADs=
"
	tablelist_adwaita_expandedImg put "
................................................................................
	variable arc_${mode}Img \
		 [image create photo tablelist_arc_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_arc_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAdUlEQVQoz43PMQrCQBAF0LcJBlJJ
GgsxjaVYewQPH+y8goLYeIKAzYILZsl8GBgGHjPDL3ucBdMUfY8jLhHYFv0HHUYMeEQhvDM+rOF2
YVbiLZ5rP5a5Y8YuVxhekXDLF/wlVVCX0av2Y6qgqbZp6dQTNhEEX90gEJ+LSk5oAAAAAElFTkSu
QmCC

"
	tablelist_arc_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAdklEQVQoz8XRPQrCYBCE4ccf0oqF
phPxEBbBOuDZ1SOk10ZME2IjNqvIRyQiiFMu8y67M/xDM2x6PEX4nhriignKN1CJKdrX4SjACxZY
oUqgDAecUxAa1AEvA35AO5zSMwYd/65j4Q17HD8Na44t8m+SHv+swzvwkBDQCQf9GAAAAABJRU5E
rkJggg==


"
	tablelist_arc_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAWklEQVQoz8XNsQ1AUBRG4fPMYAMD




SERjDCO8SIxhEIUNNLZTHY1CIeE2nOrPTb5cOFM7NfOy4rJLoFcnoqmDuv2Cxydc3B1TSjOwA7Va
RT4u6qq2n6EmgnIEHTdXWJbfx3TnAAAAAElFTkSuQmCC
"
	tablelist_arc_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAYklEQVQoz73RsQmAQAxG4YeNowg2




h+CGgmMc2NiIjYuJEzwr4RCPs9GUIR9/QuD3UoM6FmYGNaS9CjiARp0yKAItsOdSlztWo7qqfWnl
9cIJ6t7eu6hbMSmD51dJD7j+7I0n6qZe9ie8GDoAAAAASUVORK5CYII=
"
	tablelist_arc_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAc0lEQVQoz5XQMQrCQBAF0IcpPUTE




Ugi2Se8VBC+Rm2xt9AS5SrC2Fs9hZbPgFkJmf/UZeDAz/DLgIphN0bc4YYzApuivjAfssUQhPDPu
13DzZ1biFo+1G8vM+OCAXQ1MeZsb3tFPJ9xxVJGECV0NOuMaRV+KwQ8YfvQOIwAAAABJRU5ErkJg
gg==
"
	tablelist_arc_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAfklEQVQoz8XRsQnCYBiE4UdFEII7



WFgZnMAurmNn4RLaBDSzxC2SOoV9GsVasAkSfpBIIHjdd9wLx338QyscOjL7JvfRGA8scPoCHbHE
vW1O8MQNG2yRB9AcGaoQhLoFJ7g2UIQzyrDGKLhj7DDFCxcUv44VI8W6z9KzwX74Bj4AEo6rawBK
AAAAAElFTkSuQmCC
"
	tablelist_arc_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAASElEQVQoz2NggIL///8H/f//v5eB



VPD////8/xCwgRzNE6Cat9Jd8yRKnP31////P/7//29OiqYnUE2+dNPkQYqmbqi/iNIEAFLCatI7
yC/KAAAAAElFTkSuQmCC
"
	tablelist_arc_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA4AAAAKCAYAAACE2W/HAAAAWElEQVQoz2NgoDv4//+/6////w8S



ULPn////zuiCuv/////x////Zzg0PYHKa+Gy9Su6Zqim3/////cl5GS4zUg2eRDr36//IQC/TTg0
vyPKJiyaeWgWjQCS2nBV7y8ibwAAAABJRU5ErkJggg==
"
    } else {
	tablelist_arc_collapsedImg put "
R0lGODlhDgAKAOMKAAAAALGxsbOzs7S0tLm5ucfHx8nJydPT09XV1eXl5f//////////////////
/////yH5BAEKAA8ALAAAAAAOAAoAAAQc8L10pL03GMxlKB33hZhGWoNwPoR6tit8IsMZAQA7
"
	tablelist_arc_expandedImg put "
................................................................................
"
    tablelist_baghira_expandedImg put "
R0lGODlhDQAIAIABAAAAAP///yH5BAEKAAEALAAAAAANAAgAAAIOjI+pywcPwYqSwWYqxgUAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor100TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor100TreeImgs {} {
    plain100TreeImgs "bicolor100"

    foreach mode {collapsedSel expandedSel} {
	variable bicolor100_${mode}Img \
		 [image create photo tablelist_bicolor100_${mode}Img]
    }



    tablelist_bicolor100_collapsedSelImg put "




















R0lGODlhDAAKAIAAAP///////yH5BAEKAAEALAAAAAAMAAoAAAIUjI8IybB83INypmqjhGFzxxkZ
UgAAOw==
"
    tablelist_bicolor100_expandedSelImg put "
R0lGODlhDAAKAIAAAP///////yH5BAEKAAEALAAAAAAMAAoAAAIQjI+py+D/EIxpNscMyLyHAgA7
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor125TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor125TreeImgs {} {
    plain125TreeImgs "bicolor125"

    foreach mode {collapsedSel expandedSel} {
	variable bicolor125_${mode}Img \
		 [image create photo tablelist_bicolor125_${mode}Img]
    }



    tablelist_bicolor125_collapsedSelImg put "





















R0lGODlhDwAMAIAAAP///////yH5BAEKAAEALAAAAAAPAAwAAAIXjI95oB3AHIJRPmovlnS3Xn2e
M5IhlxUAOw==
"
    tablelist_bicolor125_expandedSelImg put "
R0lGODlhDwAMAIAAAP///////yH5BAEKAAEALAAAAAAPAAwAAAIVjI+pyw0PI0gyrjqZbAbyk33i

SBoFADs=
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor150TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor150TreeImgs {} {
    plain150TreeImgs "bicolor150"

    foreach mode {collapsedSel expandedSel} {
	variable bicolor150_${mode}Img \
		 [image create photo tablelist_bicolor150_${mode}Img]
    }



    tablelist_bicolor150_collapsedSelImg put "























R0lGODlhEgAOAIAAAP///////yH5BAEKAAEALAAAAAASAA4AAAIejI+poI3AXINRPmovzoFu631O

WEkh14kghBps27UFADs=
"
    tablelist_bicolor150_expandedSelImg put "
R0lGODlhEgAOAIAAAP///////yH5BAEKAAEALAAAAAASAA4AAAIYjI+py+2vgJx0xloZtm3DDAVc
KJLmiR4FADs=
"
}

#------------------------------------------------------------------------------
# tablelist::bicolor175TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor175TreeImgs {} {
    plain175TreeImgs "bicolor175"

    foreach mode {collapsedSel expandedSel} {
	variable bicolor175_${mode}Img \
		 [image create photo tablelist_bicolor175_${mode}Img]
    }



    tablelist_bicolor175_collapsedSelImg put "




R0lGODlhFQAQAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAVABAAAAIjhI+pGOsZ2ntRTlXt
PVnv7k1g6IwkBm5GqgJdu1ZwfIq1OBcAOw==
"
    tablelist_bicolor175_expandedSelImg put "




R0lGODlhFQAQAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAVABAAAAIehI+py+0PVZi02mXz
bLq+HkRaZFxkuZ1HqLbuCysFADs=
"




}




#------------------------------------------------------------------------------
# tablelist::bicolor200TreeImgs
#------------------------------------------------------------------------------
proc tablelist::bicolor200TreeImgs {} {
    plain200TreeImgs "bicolor200"

    foreach mode {collapsedSel expandedSel} {
	variable bicolor200_${mode}Img \
		 [image create photo tablelist_bicolor200_${mode}Img]
    }

    tablelist_bicolor200_collapsedSelImg put "
R0lGODlhGAASAIAAAP///////yH5BAEKAAEALAAAAAAYABIAAAIpjI+pC+sO2psmSgotznon23kV

GIkjeW1oiK1pi5pBLJPy+YpsnZs9VgAAOw==
"
    tablelist_bicolor200_expandedSelImg put "
R0lGODlhGAASAIAAAP///////yH5BAEKAAEALAAAAAAYABIAAAIijI+py+0Po5yg2osry1y3jkGg
J3ZTwJ1GqK5ki8LyTNdKAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::blueMentaTreeImgs
#------------------------------------------------------------------------------
proc tablelist::blueMentaTreeImgs {} {
................................................................................
	variable blueMenta_${mode}Img \
		 [image create photo tablelist_blueMenta_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_blueMenta_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAPklEQVQY02NgIAOI45NkQmL7MDAw
ZBKjkAGqMJMYhTgVM+GwKZOBgcGMGIXTGRgYThFSOB2KcYJkfL4mOhwBfAkGjtSLavwAAAAASUVO
RK5CYII=

"
	tablelist_blueMenta_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAATklEQVQY08XQQQ2AMABD0UdAx1SA
EFzADE0GRjghYS52gstOBAgn6LH9SZvymxoEjA/MgtwhoyBeQKnm2mqs2DGcoHRXM2HD/GZ3/809
B7GOCszzE05qAAAAAElFTkSuQmCC


"
	tablelist_blueMenta_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQUlEQVQY02NgIBX8//9fBp88ExI7



5v///w3EmFjxHwIaCJkIA/XYFDPhsKD+////jsQobGRkZNxPlhvRFTZQHI4AbXUv3nezwkkAAAAA
SUVORK5CYII=
"
	tablelist_blueMenta_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAP0lEQVQY02NgGDDA+P//f2UGBoYU



PGrmMDIy3mVgYGBg+P//f+1/7KABQxsWxQ047UBS3EDQ0f///7enT/AAAJt8QP+zI+bcAAAAAElF
TkSuQmCC
"
	tablelist_blueMenta_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAPklEQVQY02NgIAOI45NkQmL7MDAw



ZBKjkAGqMJMYhTgVM+GwKZOBgcGMGIXTGRgYThFSOB2KcYJkfL4mOhwBfAkGjtSLavwAAAAASUVO
RK5CYII=
"
	tablelist_blueMenta_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAATklEQVQY08XQQQ2AMABD0UdAx1SA



EFzADE0GRjghYS52gstOBAgn6LH9SZvymxoEjA/MgtwhoyBeQKnm2mqs2DGcoHRXM2HD/GZ3/809
B7GOCszzE05qAAAAAElFTkSuQmCC
"
	tablelist_blueMenta_collapsedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAPklEQVQY02NgIAOI45NkQmL7MDAw



ZBKjkAGqMJMYhTgVM+GwKZOBgcGMGIXTGRgYThFSOB2KcYJkfL4mOhwBfAkGjtSLavwAAAAASUVO
RK5CYII=
"
	tablelist_blueMenta_expandedSelActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAATklEQVQY08XQQQ2AMABD0UdAx1SA



EFzADE0GRjghYS52gstOBAgn6LH9SZvymxoEjA/MgtwhoyBeQKnm2mqs2DGcoHRXM2HD/GZ3/809
B7GOCszzE05qAAAAAElFTkSuQmCC
"
    } else {
	tablelist_blueMenta_collapsedImg put "
R0lGODlhCgAKAMIFAAAAAC0tLZaWlpycnMnJyf///////////yH5BAEKAAcALAAAAAAKAAoAAAMU
eLrcfkM8GKQbod4cSMPaF37W5CQAOw==
"
	tablelist_blueMenta_expandedImg put "
................................................................................
R0lGODlhCgAKAKEDAAAAAC0tLZCQkP///yH5BAEKAAMALAAAAAAKAAoAAAIPnI+pe+IvUJhTURaY
3qwAADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::classic100TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic100TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic100_${mode}Img \
		 [image create photo tablelist_classic100_${mode}Img]
    }

    tablelist_classic100_collapsedImg put "
R0lGODlhDAAKAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAMAAoAAAIgnI8Xy4EhohTOwAhk
HVfkuEHAOFKK9JkWqp0T+DQLUgAAOw==
"
    tablelist_classic100_expandedImg put "
R0lGODlhDAAKAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAMAAoAAAIcnI8Xy4EhohTOwBnr
uFhDAIKUgmVk6ZWj0ixIAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic125TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic125TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic125_${mode}Img \
		 [image create photo tablelist_classic125_${mode}Img]
    }

    tablelist_classic125_collapsedImg put "
R0lGODlhDwAMAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAPAAwAAAImnI85wd0ZhJwzoDgB
tQdLXV0UKHFGBKSqZi7jJmZw94Y0NXeOkxQAOw==
"
    tablelist_classic125_expandedImg put "
R0lGODlhDwAMAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAPAAwAAAIlnI85wd0ZhJwzoEip
PTjLbXQeuAjAiQICKWasV13wJ8/k4jhJAQA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic150TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic150TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic150_${mode}Img \
		 [image create photo tablelist_classic150_${mode}Img]
    }

    tablelist_classic150_collapsedImg put "
R0lGODlhEgAOAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAASAA4AAAIxnI+Jwe2hgpi0Cris
xkdWYHGGR4GVOJCTSaEeAMema7ET/YWJKtjXrtFlgq3I46EoAAA7
"
    tablelist_classic150_expandedImg put "
R0lGODlhEgAOAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAASAA4AAAIrnI+Jwe2hgpi0Cris
xkfqyhneN4XDSJoewLZAmaCfSlJ0fcV4nuHm+XgoCgA7
"
}

#------------------------------------------------------------------------------
# tablelist::classic175TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic175TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic175_${mode}Img \
		 [image create photo tablelist_classic175_${mode}Img]
    }

    tablelist_classic175_collapsedImg put "
R0lGODlhFQAQAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAVABAAAAI9nI+pE+3vVhC02hrU
vFzktFkA9yFhNV7lcVKptRqt8GKaC+R6TsUMV+vdLkHPUEQ6opKgDtPkVEkgVN+gAAA7
"
    tablelist_classic175_expandedImg put "
R0lGODlhFQAQAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAVABAAAAI1nI+pE+3vVhC02hrU
vFzktHXWh4QiRR7mmRqr2DIUQNc1qp1jruNg7ysBPbxe7NWJMSBMZQEAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::classic200TreeImgs
#------------------------------------------------------------------------------
proc tablelist::classic200TreeImgs {} {
    foreach mode {collapsed expanded} {
	variable classic200_${mode}Img \
		 [image create photo tablelist_classic200_${mode}Img]
    }

    tablelist_classic200_collapsedImg put "
R0lGODlhGAASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAYABIAAAJKXI6pMe0mopxUsAer


jvcFDQBa53xVOGIZhVZkY7Kiq8ZTS71ZyPc8V4v4hjOdTYKbGEGzXPDUVD5lKcxRGJUsN1UPt+tZ
iA+qQQEAOw==
"
    tablelist_classic200_expandedImg put "
R0lGODlhGAASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAYABIAAAJAXI6pMe0mopxUsAer

jveFvXXOB1ZiQ5bTmakSm7oWlgH2jdscTeY+sMPEXDDZi2cMepIzIbOYhBpZhoX1QBsUAAA7
"
}

#------------------------------------------------------------------------------
# tablelist::dustTreeImgs
#------------------------------------------------------------------------------
proc tablelist::dustTreeImgs {} {
................................................................................
	variable menta_${mode}Img \
		 [image create photo tablelist_menta_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_menta_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAPklEQVQY02NgIAOI45NkQmL7MDAw
ZBKjkAGqMJMYhTgVM+GwKZOBgcGMGIXTGRgYThFSOB2KcYJkfL4mOhwBfAkGjtSLavwAAAAASUVO
RK5CYII=

"
	tablelist_menta_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAATklEQVQY08XQQQ2AMABD0UdAx1SA
EFzADE0GRjghYS52gstOBAgn6LH9SZvymxoEjA/MgtwhoyBeQKnm2mqs2DGcoHRXM2HD/GZ3/809
B7GOCszzE05qAAAAAElFTkSuQmCC


"
    } else {
	tablelist_menta_collapsedImg put "
R0lGODlhCgAKAMIFAAAAAC0tLZaWlpycnMnJyf///////////yH5BAEKAAcALAAAAAAKAAoAAAMU
eLrcfkM8GKQbod4cSMPaF37W5CQAOw==
"
	tablelist_menta_expandedImg put "
................................................................................
	variable mint2_${mode}Img \
		 [image create photo tablelist_mint2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_mint2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAQ0lEQVQoz2NgGCjQRY6mewwMDLMI
KWLCImZHSCM2TWyENDLhEMerkYkcj+PS9IuBgeEQAwNDGrGa8GogO8ipErm0AwAGOwrpO0JShAAA
AABJRU5ErkJggg==


"
	tablelist_mint2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAVElEQVQoz+3RIQqAQBBA0afd4i08




kXhCryIYDSavYNNsWWEQXDQKfhhYhnlp+QMFGvSoMncbWsxQpkeH9QbsEVxrMGIJM6V9tggfgQiH
N+Cs/vDnHlP2D8ZcM1duAAAAAElFTkSuQmCC
"
	tablelist_mint2_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAUUlEQVQoz2NgGBAwadKk/8SoY0Lm




fP36lSiNTOgCMjIyBDViaHJ3dyeokQmbICGNTOQEGFZNO3fuZHjy5AlDXl4eI1GaCGnAqomQBrIj
l34AADlaJg96+zhqAAAAAElFTkSuQmCC
"
	tablelist_mint2_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAT0lEQVQoz+3RsQ3AQAgDQH/Fvgzi



yRjCS1BQkS5CivL6PkGiMicXAP8AABYAkOyqej0yM7j7egQkW1Jn5r2SmmRvayc8AhNGxDmY8GvP
vQB58zr4kXiRVAAAAABJRU5ErkJggg==
"
    } else {
	tablelist_mint2_collapsedImg put "
R0lGODlhDQAOAMIFAAAAACEhIScnJ2VlZXV1df///////////yH5BAEKAAcALAAAAAANAA4AAAMc
eLrc/odAFsZUQdgZ8n6dB4XaKI4l90HS5b5HAgA7
"
	tablelist_mint2_expandedImg put "
................................................................................
	variable oxygen2_${mode}Img \
		 [image create photo tablelist_oxygen2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_oxygen2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAAVUlEQVQY063NsQ1AUBhF4S/RSAxi
ARWVRCMS21hF8Sq7WEEMoLGG5i3wvzjNrc49/MCENSpVeVvsaHCW1DtcOPJJmAEvtqjY40ZCHREX
PCVFGDFHpQ9E+QlJi3wOIgAAAABJRU5ErkJggg==

"
	tablelist_oxygen2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAAUklEQVQY08XQKwqAQAAE0BcXvI5p
TYJlEbyNyZuYPJTYtXgNyybTatBpMzDMhz/Ror9pCV2JOeFAzLzGjqE0fcSGBiump/VnnFjebA+5
QfXJ0xfHZQlg71WjSwAAAABJRU5ErkJggg==


"
	tablelist_oxygen2_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAAdklEQVQY06WQLQ6DYBBE3zZwn09U
oUkQJJxhHUnRKI6BxOwdEFwCsWfoHVq7NYjKbjpm1Mv8wL9Sj1Y9hix3u7wGVvVYMrB8pd8BA05g
siKvX5OxIicwAh3wyNRGPRpgA3ZgzRzWq8dTPebM5uryNzBakSMDfwCuvyBR+rjbCQAAAABJRU5E
rkJggg==



"
	tablelist_oxygen2_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAAcklEQVQY08XQLQ7CQBAG0LcEQThN




BQpHgiGkd5gKLI4jcAX+VB1n6C3Wc5jFrCCYVsGoyZe8Sb7hbxO5bCKX/Ve2i1y2Y3aGBa6Ry7rC
FW5YjuFUwQkdDrjj2TfpPAnXAw+0GPomxZTK84/9iBcuP3n2G9A/HMoKfNhNAAAAAElFTkSuQmCC
"
    } else {
	tablelist_oxygen2_collapsedImg put "
R0lGODlhDwAIAIABAAAAAP///yH5BAEKAAEALAAAAAAPAAgAAAIQjI8ZAOrcXIJysmoo1jviAgA7
"
	tablelist_oxygen2_expandedImg put "
R0lGODlhDwAIAIABAAAAAP///yH5BAEKAAEALAAAAAAPAAgAAAIRjI+pawDnmHuThRntzfr2fxQA
................................................................................
    tablelist_phase_expandedImg put "
R0lGODlhDwAKAKECAAAAAMfHx////////yH5BAEKAAAALAAAAAAPAAoAAAIRhI+pyx0P4YqS0WYq
BmH7jxQAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::plain100TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain100TreeImgs {{treeStyle "plain100"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAAKklEQVQY02NgoADUE6OIiVRNTKTa
xESq85hI9RM+DY2kaGgkxUmNVI0HAPz6BIzB2+8fAAAAAElFTkSuQmCC

"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAwAAAAKCAYAAACALL/6AAAAL0lEQVQY02NgGHSAkYGBoZ4IdY3I


GhgIaGpEt4EBj6ZGbE5iwKGpkVh/1Q9ssAIAIv0EhL5rqRkAAAAASUVORK5CYII=
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIUjI8IybB83INypmqjhGFzxxkZ
UgAAOw==
"
	tablelist_${treeStyle}_expandedImg put "
R0lGODlhDAAKAIABAH9/f////yH5BAEKAAEALAAAAAAMAAoAAAIQjI+py+D/EIxpNscMyLyHAgA7
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain125TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain125TreeImgs {{treeStyle "plain125"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "



iVBORw0KGgoAAAANSUhEUgAAAA8AAAAMCAYAAAC9QufkAAAAMklEQVQoz2NgoCJoIkUxEyUGMFHi
AiZKvMBESRgwURKIxGiuI1dzHbnOriM3wOponsIAebUFmXDw+D8AAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_expandedImg put "



iVBORw0KGgoAAAANSUhEUgAAAA8AAAAMCAYAAAC9QufkAAAAN0lEQVQoz2NgGJKAkYGBoZ4E9Y3o
mhmINKARm80MRBjQiMvZDAQMaMTnZwY8BjSSE5D1DMMXAABNQwWFHKBjWAAAAABJRU5ErkJggg==
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhDwAMAIABAH9/f////yH5BAEKAAEALAAAAAAPAAwAAAIXjI95oB3AHIJRPmovlnS3Xn2e
M5IhlxUAOw==
"
	tablelist_${treeStyle}_expandedImg put "
R0lGODlhDwAMAIABAH9/f////yH5BAEKAAEALAAAAAAPAAwAAAIVjI+pyw0PI0gyrjqZbAbyk33i

SBoFADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain150TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain150TreeImgs {{treeStyle "plain150"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "




iVBORw0KGgoAAAANSUhEUgAAABIAAAAOCAYAAAAi2ky3AAAAO0lEQVQoz8WTwQkAIAzEShaXbO4K
IhH7b+hd6MyjWbeLVDCqy6hiUnVGJYDK5inIAmQRzaJsC/1++7UNYcUGlAU+IlcAAAAASUVORK5C
YII=
"
	tablelist_${treeStyle}_expandedImg put "



iVBORw0KGgoAAAANSUhEUgAAABIAAAAOCAYAAAAi2ky3AAAAP0lEQVQoz+3SuRHAIAwEwHXlzHXu
BgAJO+Vy7ejjpsqD8aEuM8ghllVHDrDsRtPEUu1IA0tn2Qosfy867lODF7S/BobiEIg7AAAAAElF
TkSuQmCC
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhEgAOAIABAH9/f////yH5BAEKAAEALAAAAAASAA4AAAIejI+poI3AXINRPmovzoFu631O

WEkh14kghBps27UFADs=
"
	tablelist_${treeStyle}_expandedImg put "
R0lGODlhEgAOAIABAH9/f////yH5BAEKAAEALAAAAAASAA4AAAIYjI+py+2vgJx0xloZtm3DDAVc
KJLmiR4FADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain175TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain175TreeImgs {{treeStyle "plain175"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAAQCAYAAAD52jQlAAAAQ0lEQVQ4y72UgQkAMAjDJI+Pfr4b
hs08IGgbnPk0ZwvAAGNsjBEFRsYY5WFYgaHbKzRtaNrnp11U2kqlLX+mOOsvdQEd0weYc7j+XgAA
AABJRU5ErkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAAQCAYAAAD52jQlAAAARUlEQVQ4y+2TMRIAIAjD4su9/twX
qAUZHMhODihAU80A5kO9dlKSYp06JSHWbXyCYjk7JSCWGxSmWJH0McSqPLnZX/cHC9piB4dGz7zF


AAAAAElFTkSuQmCC
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhFQAQAKECAAAAAICAgP///////yH5BAEKAAAALAAAAAAVABAAAAIjhI+pGOsZ2ntRTlXt
PVnv7k1g6IwkBm5GqgJdu1ZwfIq1OBcAOw==
"
	tablelist_${treeStyle}_expandedImg put "



R0lGODlhFQAQAKECAAAAAICAgP///////yH5BAEKAAAALAAAAAAVABAAAAIehI+py+0PVZi02mXz
bLq+HkRaZFxkuZ1HqLbuCysFADs=
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plain200TreeImgs
#------------------------------------------------------------------------------
proc tablelist::plain200TreeImgs {{treeStyle "plain200"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABgAAAASCAYAAABB7B6eAAAASElEQVQ4y8WVhw0AIAzDkB9H/pwf
AEMPSNSMdowPM2+CUZNQb0ItF7Un1MZTp4s6wtQ92SGwJLCUyNJky5haFs3yVByDP/kHCxQRCJzE
wLOAAAAAAElFTkSuQmCC
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABgAAAASCAYAAABB7B6eAAAATElEQVQ4y+3UyQ0AIAhE0W/lZDq3
A2XRg4YpgBdlgc73GYAdqKMVQBHR7gUUEHm+iCQibw9IIIo0mSCi6BQRQJQZU5yIbu2K9bl4OxOe
wQiIsZLIJgAAAABJRU5ErkJggg==
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhGAASAIABAH9/f////yH5BAEKAAEALAAAAAAYABIAAAIpjI+pC+sO2psmSgotznon23kV

GIkjeW1oiK1pi5pBLJPy+YpsnZs9VgAAOw==
"
	tablelist_${treeStyle}_expandedImg put "
R0lGODlhGAASAIABAH9/f////yH5BAEKAAEALAAAAAAYABIAAAIijI+py+0Po5yg2osry1y3jkGg
J3ZTwJ1GqK5ki8LyTNdKAQA7
"
    }
}

#------------------------------------------------------------------------------
# tablelist::plastikTreeImgs
#------------------------------------------------------------------------------
................................................................................
	variable ubuntu2_${mode}Img \
		 [image create photo tablelist_ubuntu2_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntu2_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAAQ0lEQVQY02NgIAGoEFKwHZsiJiQ2
FwMDwxR0RUxoGjjRFTFhsYqTgYGhB5+C7wwMDCW4FHxnYGDIYWBguEO0LwiGAwABBAfLngO55AAA
AABJRU5ErkJggg==

"
	tablelist_ubuntu2_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAASElEQVQY073MsRFAQBgF4Y8LVCAU
aUZDAoECjIKc9Oa6kkj+kJAN3+48PqfBgunF54SKAT26EBcObCmGgjGiFif2p8sVs3+5ATBkB+s7
tAL3AAAAAElFTkSuQmCC


"
	tablelist_ubuntu2_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAAS0lEQVQY02NgIAGwYRNkQmILMzAw


sOJTwAnFrLgUMPz//38nVBE7NuuU/kNAHwMDgwguBccZGBj4cJqATRLZDf8ZGBh+QjFWgNVYAOY5
EusI1YWXAAAAAElFTkSuQmCC
"
	tablelist_ubuntu2_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAAgAAAAKCAYAAACJxx+AAAAARElEQVQY073MsQmAUBBEwblIRAT5



YAPWYG779mNkdEaHiYY60cLC43OBGePLf9SYMnPN24auCqVl5oIhInacT8mG3r8uDt8Ur7bv+awA
AAAASUVORK5CYII=
"
    } else {
	tablelist_ubuntu2_collapsedImg put "
R0lGODlhCAAKAMIFAAAAAD4+PkdHR0hISE9PT////////////yH5BAEKAAcALAAAAAAIAAoAAAMS
eLrcO+4E4cJsNhBmKfcMFDUJADs=
"
	tablelist_ubuntu2_expandedImg put "
................................................................................
	variable ubuntu3_${mode}Img \
		 [image create photo tablelist_ubuntu3_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntu3_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAXElEQVQoz53SwQnAMAiF4R+7RDtP
5uk0WbIDBHLtJaegz9Z3EYUPRIRCjq1vwASGQrb1F9CB8w9iAQktmEtoYosQWnIoF1rl5Bl6gHvV
T8gFCoUgQhJ4adk3lPMCv1MPZaZLyU8AAAAASUVORK5CYII=

"
	tablelist_ubuntu3_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAXUlEQVQoz93QMQ2AMBBA0dcggLUT
RjCBEdQggwUPOGFCAAJYOkBIKWyEn9xyubcc/yugQ3x4v2IKCQxoCmBBj7XChhkt6hKAKi3v4Akc
UQ5eQK6IMU1889X4FnyoHanvE2re8YhQAAAAAElFTkSuQmCC


"
	tablelist_ubuntu3_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAAYElEQVQoz7XQwQ2AMAiF4R/iFJ50



FKdwXEexJ9d43ptCq8Z3g/AlAHyNpH1kzqt6lnRKWp4ggAU4MuhBP4WebBFC79zchP7myz1UgM3M
yihqggyFIEIpAJiq+jKzlT9yA0MWI4rFHgIbAAAAAElFTkSuQmCC
"
	tablelist_ubuntu3_expandedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAOCAYAAAD0f5bSAAAARUlEQVQoz93SsQkAIBAEwftOHuzN


ouxNLGXNBEX0U934JjvpvwzIklJwX82sCHCgca8BPngAziAA9+AAz2ADY2CB/ugjOncZoKZnp+Bb
AAAAAElFTkSuQmCC
"
    } else {
	tablelist_ubuntu3_collapsedImg put "
R0lGODlhDQAOAMIFAAAAADw8PFRUVKOjo7y8vP///////////yH5BAEKAAcALAAAAAANAA4AAAMf
eLrcR84NEdkItJ6LNe/RBzZiRgaoeY4SK6kRpM1KAgA7
"
	tablelist_ubuntu3_expandedImg put "
................................................................................
    }
}

#------------------------------------------------------------------------------
# tablelist::ubuntuMateTreeImgs
#------------------------------------------------------------------------------
proc tablelist::ubuntuMateTreeImgs {} {
    foreach mode {collapsed expanded collapsedSel expandedSel} {

	variable ubuntuMate_${mode}Img \
		 [image create photo tablelist_ubuntuMate_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_ubuntuMate_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAXklEQVQoz2NgoCawsbGRJlUPExo/
1sbGpoESAxgYGBjqSTGECYc40YYw4ZEjyhAmAvIEDWEiwpX1NjY2jpQY0HjkyJH95BrQeOTIEbK9
QFAzPgOI0ozLAKI1UyUvAADOUhxG1dpsVwAAAABJRU5ErkJggg==

"
	tablelist_ubuntuMate_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAYUlEQVQoz+3SsQ2AMAxE0Y/Ywx1b
nAS7MAgwCMMgeYt0mYQuUkSIkhqu9n+V4d8gaQLWjuZ095AAAEkbsDfEh7tndyNAjPEyM4ClJ05A


A1KMM6CCvMYPoIBU4+okzR/5xBvrpyg6R2b3OgAAAABJRU5ErkJggg==
"
	tablelist_ubuntuMate_collapsedSelImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAWklEQVQoz2NgoCb4//+/DKl6mND4
Mf///2+gxAUV/yGggVwXwEA9sYYw4ZEjyhAmAvIEDWEiwpX1////d6TEgEZGRsb95BrQyMjISLYX
CGqmSjrAZkADXfMCAHPpOeamW0O+AAAAAElFTkSuQmCC



"
	tablelist_ubuntuMate_expandedSelImg put "









iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAASUlEQVQoz2NgGAWM////V2FgYEgh
Qc9cRkbG2ygi////r/9PHGjAaSwRhjQQdBseQxqI9iAWQxpIDlkkQxrIjp7////bj5CUCAC6C463
hFszLQAAAABJRU5ErkJggg==
"


















    } else {
	tablelist_ubuntuMate_collapsedImg put "
R0lGODlhEAAOAMIFAAAAADw8PJ2dnaOjo83Nzf///////////yH5BAEKAAcALAAAAAAQAA4AAAMg

eLrc/m8I6EaYdNmb1ebZB0JiQFAiRgasuo4ojLpdnQAAOw==
"
	tablelist_ubuntuMate_expandedImg put "
R0lGODlhEAAOAMIFAAAAADw8PJeXl52dnc7Ozv///////////yH5BAEKAAcALAAAAAAQAA4AAAMf

eLrc/jBKKaq9oo3Aex/O5nHgI37SWabBOhFTLM9PAgA7
"
	tablelist_ubuntuMate_collapsedSelImg put "
R0lGODlhEAAOAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAQAA4AAAIbhI+puxGs3INHTmov

yzpy+IEWBYykRBpOyhoFADs=
"
	tablelist_ubuntuMate_expandedSelImg put "
R0lGODlhEAAOAKEBAAAAAP///////////yH5BAEKAAAALAAAAAAQAA4AAAIXhI+py+0eopwh0auu
















ZBrOB2xgOJamWQAAOw==
"
    }
}

#------------------------------------------------------------------------------
# tablelist::vistaAeroTreeImgs
#------------------------------------------------------------------------------
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAAbUlEQVQoz83QsQqCUBQG4I9oayrd
Gpp6COfWBgVBH1Eh6A16myYRX6FF4XJBBXHonw7n/4bD4S+S4TRXHoL5hieSNQgfFLiuwQ5vlLgv
QejRosZ5CV5QocEwLY8RSpHjhW9YxPAx3thv/uP++QGucwwpQjDsiQAAAABJRU5ErkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAAOklEQVQoz2NgGLrAkYGBoZwYRVcY
GBhuElQUERHxH10hE5qiyREREdrYTGAiRhEyKIdahYwrh1oMAACO1g8CUDLawwAAAABJRU5ErkJg
gg==
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAAiklEQVQoz2NgGHggc+T7FJkj3w1x
yTMhseMYGBiWyRz57kxIIQMDA8NMqOJIfFZ/gtJJMke+f5M58j0Jn4kMT2w45zEwMBQyMDDMlTny
XQOnQqhJ/QwMDMlPbDhvwMRZ0BQVMDAwVEIVLUeWY0EzMJ2BgSHqiQ3nXnSbkBUuYmBgmPvEhvM8
fWIOAAwvKe6unLtFAAAAAElFTkSuQmCC
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOCAYAAAAWo42rAAAAQUlEQVQoz2NgGKJA5sj3Spkj3zci
i7FgU8TAwNCELseETVGaNAuGAUzEKIIrJKQI2Y0WDAwMLLOe/kGW2zTUIgEAh5gVN7Wc7FMAAAAA
SUVORK5CYII=





"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhCgAOAMIHAAAAAIKCgpCQkJubm6enp6ioqMbGxv///yH5BAEKAAcALAAAAAAKAA4AAAMa
eLrc/szAQwokZzx8hONH0HDemG3WI03skwAAOw==
"
	tablelist_${treeStyle}_expandedImg put "
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAhElEQVQoz9XSMQrCUAwG4A9xL1jE
zcWtR3B3KIgg6OLk0YSOCqXg1rN4ABGF3qCLOJQnvoII/ltIvpAh/FXmSD4NDTr1FDnGfRDUWGLS
B91RYYtZLIIHCqyRxSJocMAGaSxKsMfpefIrwzdghB1KXLrNEEqxwhHX0MYQWuCM21c/4ndpAXQy
EDjRgV+jAAAAAElFTkSuQmCC

"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAT0lEQVQoz2NgGHlAkYGBwY9UDUcZ
GBhukqQhMjLyPzZNTDg0LImMjLTCZSITqRrQNRGlAVkT0RoYGBgYGKG0HwMDQzcONQsYGBjah3va
AgAg2BApacIJTgAAAABJRU5ErkJggg==


"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAArUlEQVQoz9XSIQ7CQBCF4T+0Zu8w
l8Cv4wIEV2QrMZBgapBgSEAUWSR1DRfAjecSe4dRTTANomlDcTBusvPNG7HwPyVqhahNP81NOv0c
qEVt9g0COAI3UUtGo+DdBciBUtTWY5MI3l2BLIKTqO1HoRZWDSyAXNTSUUjUkghq4NAmvyseAClQ
NLAJ3p2773EPWAE7IAveVX1L+5K2wDJ49xg6vYvuQBm8e/7GH30BhiMxHhSDo2EAAAAASUVORK5C
YII=


"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAAA0AAAAQCAYAAADNo/U5AAAAUElEQVQoz2NgGGFA5sj3IJkj3zei



i7Pg08DAwDCHgYFBEF2OCZ+GNGkWQWzyTKRqwNBEjAYUTcRqgGsiRQNy6MUzMDAIznr6B5uaTSMh
eQEAgzAb/lYeOL4AAAAASUVORK5CYII=
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhDQAQAMIHAAAAAIGBgYuLi5OTk56enqenp8XFxf///yH5BAEKAAcALAAAAAANABAAAAMg
eLrc/tCZuEqh5xJ6z4jdIUDhETzhiCofeWxg+UxYjSUAOw==
"
	tablelist_${treeStyle}_expandedImg put "
................................................................................
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAk0lEQVQ4y93TrwoCQRAH4A+5ZPMP
GCyCr2HVoEXhMPl4JhG0aPFlLAZBjWbLXpH1jtug4LSB+X0Msyx/VyO06gQab30fE3RTAThhil4q
8MAB87BRbQDu2CLHIAUokHVAhilAgeywRDMF6GCBDZ6xgawivAq3OH8aykrCeQhfylaMAW3MsMe1
6hljwBhH3L7yF35fL0eRFD0vdToiAAAAAElFTkSuQmCC

"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAVklEQVQ4y2NgGAV0Ae4MDAzllGi+
wsDAcJNszZGRkf/xGcCER3NvZGSkNiFbmCjRjM0AkjSjG0CyZmQDyNLMwMDAwAilyxkYGJLwqFvA
wMDQPpolsAMA67sS7mmtYFoAAAAASUVORK5CYII=



"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAkklEQVQ4y2NgGF5A5sj36TJHvgeR




oocJjR/NwMAwR+bI92hyDWBgYGCoYmBgmC5z5HsyOV74BKUzZI58/yZz5HsGWQagGVJAlgFkGYJu
AJIh/2WOfHckNhBRNDMwMPQxMDAUPrHh3E+/MKAoFqCaPxGbDhixuOAPAwND7hMbzqXEGMCCxl/K
wMCw+4kN57qhk4MBqw9f8e/1ZzoAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAAVklEQVQ4y2NgGAW0BzJHvhfIHPm+




EZc8CyHNDAwM3fjUMRHSHC/JgtcSJkKa2Znwe5GJEs0YBpCqGcUAcjTDDSBXM3I0OjIwMLAsfP4H
l7pNozkCNwAAt+IfTnBR4NgAAAAASUVORK5CYII=
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhEAASAOMIAAAAAIaGhouLi5CQkJiYmKGhoaioqMPDw///////////////////////////
/////yH5BAEKAAAALAAAAAAQABIAAAQrEMhJq70426OrMd0EFiEAAkR4AkO3AoL2AkH2xvbUylLq
AiTVLMMpGY+ACAA7
"
................................................................................
"
	tablelist_${treeStyle}_expandedActImg put "
R0lGODlhEAASAMIFAAAAAB3E92HW+Xvd+4Lf+////////////yH5BAEKAAcALAAAAAAQABIAAAMj
eLrc/jDKSaeoJ4Qaxp4d8UWhKJUmhKbOyjKCJmsXZt/4kwAAOw==
"
    }
}

#------------------------------------------------------------------------------
# tablelist::vistaAeroTreeImgs_175
#------------------------------------------------------------------------------
proc tablelist::vistaAeroTreeImgs_175 {{treeStyle "vistaAero"}} {
    foreach mode {collapsed expanded collapsedAct expandedAct} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAlElEQVQ4y+XTrQoCQRAA4A+5ZPMH
DBbB17Bq0KJwmHw8kwhatPgylguCGs2WvSLH3XEbFJw2sPMxO8PwNzFBp0lh6yMfYoZ+LAQXzDGI
hZ44YRk6bAzBA3ukGMVAObYN2DgGyrED1mjHQD2ssMOr7GFSgWzCrK5VX0tKkDQgWZ1hF0FdLHDE
re76i6Apzrh/5dZ+L96mrBQ93arVCgAAAABJRU5ErkJggg==
"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAWElEQVQ4y2NgGAWDCrgzMDCUU8OQ
KwwMDDcpNiQyMvI/MQYx4TGkNzIyUptYW5moYQg2g8gyBN0gsg1BNogiQxgYGBgYoXQ5AwNDEh51
CxgYGNpHsxRlAAAzzRLucI72KAAAAABJRU5ErkJggg==
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAk0lEQVQ4y2NgGBlA5sj36TJHvgeR
o5cJjR/NwMAwR+bI92hKDWJgYGCoYmBgmC5z5HsyJV77BKUzZI58/yZz5HsGRQahGVZAkUEUGYZu
EJJh/2WOfHckNbBRDGFgYOhjYGAofGLDuX/gwogqsQY15BOp6YgRi4v+MDAw5D6x4VxKikEsaPyl
DAwMu5/YcK4b+iUHAMhVX/GmlHueAAAAAElFTkSuQmCC
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAXUlEQVQ4y2NgGAWDB8gc+V4gc+T7
RkLqWAgZwsDA0E1IHQMDAwMTIUPiJVlYiHE5EyFD2JmICwImahiCYRC5hqAYRIkhcIMoNQQ5+h0Z
GBhYFj7/g0vdptEcRTkAAKPJH058YP1QAAAAAElFTkSuQmCC
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhEgASAOMIAAAAAIaGhouLi5CQkJiYmKGhoaioqMPDw///////////////////////////
/////yH5BAEKAAAALAAAAAASABIAAAQsEMhJq704a3m2NYZHhYUohQBhosAgsoDgwUCwwfI9ubOk
voDSirbpmI5ISgQAOw==
"
	tablelist_${treeStyle}_expandedImg put "
R0lGODlhEgASAMIGAAAAACYmJisrK1lZWYaGhoiIiP///////yH5BAEKAAcALAAAAAASABIAAAMk
eLrc/jDKSSssVomQxeCV94VDCUqiOaVqxLZPEcx0QGR4rlsJADs=
"
	tablelist_${treeStyle}_collapsedActImg put "
R0lGODlhEgASAMIFAAAAABzE9ybG9yvH93jc+v///////////yH5BAEKAAcALAAAAAASABIAAAMl
eLrc/jBKRaYTwzJxuO6KZ4miVJYQGkznuKBp+HFwhH0Uru9KAgA7
"
	tablelist_${treeStyle}_expandedActImg put "
R0lGODlhEgASAMIFAAAAAB3E92HW+Xvd+4Lf+////////////yH5BAEKAAcALAAAAAASABIAAAMj
eLrc/jDKSSsUVoWQw+CVR4CTOFLmKaUqxLaOsM0blt14XiUAOw==
"
    }
}

#------------------------------------------------------------------------------
# tablelist::vistaAeroTreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::vistaAeroTreeImgs_200 {{treeStyle "vistaAero"}} {
    foreach mode {collapsed expanded collapsedAct expandedAct} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_${treeStyle}_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAAlUlEQVQ4y+3TrwoCQRAH4A+5ZPMP
GCyCr2HVoEXhMPl4JhG0aPFlLAZBjWbLXhEP93CDgr844WNmdpZ/njJA4xOg9qLWxQjtlCgcMEYn
JXrDDtPQeRIUrlgjRy8VWsDLAPdToQW8wRz1VGgLM6xwj0GzCHARdnuMHT97A+YBPFV5qDK0iQm2
OFc9qTJ0iD0uX/P3fycPZOQUPUGGEDQAAAAASUVORK5CYII=


"
	tablelist_${treeStyle}_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAAWUlEQVQ4y2NgGAXDCrgzMDCUU9vA




KwwMDDepamBkZOR/UgxlImBgb2RkpDapLmGitoG4DKXIQGyGUmwguqFUMZCBgYGBEYldzsDAkIRH
7QIGBob20Sw7MAAA1EIS7m4d8XoAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_collapsedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAAlUlEQVQ4y2NgGAXIQObI9+kyR74H





UWIGExaxaAYGhjkyR75HU9NQBgYGhioGBobpMke+J1PL+5+gdIbMke/fZI58z6CaoWgGF1DNUKoZ
jG4oksH/ZY58d6QkolAMZGBg6GNgYCh8YsO5f/CFKdVjH2rgJ3LTKSMOl/5hYGDIfWLDuZQcQ1mw
iC1lYGDY/cSGc93wL+kAdJtf8bMQS5gAAAAASUVORK5CYII=
"
	tablelist_${treeStyle}_expandedActImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAASCAYAAAC0EpUuAAAAXElEQVQ4y2NgGAXDB8gc+V4gc+T7




RmLVsxBjIAMDQzcxamGAiRgD4yVZWEjxGRMxBrIzkRZcTNQ2EKuhlBqIYSg1DEQxlFoGoicpRwYG
BpaFz//gUrtpNMcOHAAAiLgfTviWUiAAAAAASUVORK5CYII=
"
    } else {
	tablelist_${treeStyle}_collapsedImg put "
R0lGODlhFQASAOMIAAAAAIaGhouLi5CQkJiYmKGhoaioqMPDw///////////////////////////
/////yH5BAEKAAAALAAAAAAVABIAAAQvEMhJq7046w0Ox4bxWWIxUiJAnFIKDKwLCKcMBKNM5xNc
S6sYwMQChIoSD3LJjAAAOw==
"
................................................................................
CFUDzR1W9mWhMWIldg7ptV6tBdS2vXUkqKu86PmhgqaehlWZKFuOpnNQAAA7
"
    tablelist_${treeStyle}_expandedImg put "
R0lGODlhEQASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAARABIAAAIxnI+py60Bo4woiIuz
CFV7flheBhrieJXDiaoWAMfx1qFpbbv2He50v3NNhiqH8TgoAAA7
"
}

#------------------------------------------------------------------------------
# tablelist::vistaClassicTreeImgs_175
#------------------------------------------------------------------------------
proc tablelist::vistaClassicTreeImgs_175 {{treeStyle "vistaClassic"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
		 [image create photo tablelist_${treeStyle}_${mode}Img]
    }

    tablelist_${treeStyle}_collapsedImg put "
R0lGODlhFAASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAUABIAAAI8nI+pyxgPo0xB2Itv
oLnb7XRABx5VNmalcWIptg7t9WqcAOS6/t0u6aMBQ6ihSWRkeZKypYoiiUIaVEUBADs=
"
    tablelist_${treeStyle}_expandedImg put "
R0lGODlhFAASAKECAAAAAICAgP///////yH5BAEKAAMALAAAAAAUABIAAAI2nI+pyxgPo0xB2Itv
oLnb7XgdeFQiRhrm+XFsGwrATNNw+d5qLqTDyvIBT0JeMSeUKCGNpqIAADs=
"
}

#------------------------------------------------------------------------------
# tablelist::vistaClassicTreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::vistaClassicTreeImgs_200 {{treeStyle "vistaClassic"}} {
    foreach mode {collapsed expanded} {
	variable ${treeStyle}_${mode}Img \
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAKCAYAAABSfLWiAAAAZklEQVQoz63QsQmAQAwF0KeClYWF
jRPYOISjO4QD2AkOITYnHGLhnaZKAnmEz881Yso5LKO+Q58DVVG/RlAX5mQkG6oedisGtGHeUzK5
akKNDcubT4oHoA/A/DaT4itwz6TBkQrACcudDrpWA7yXAAAAAElFTkSuQmCC

"
	tablelist_win10_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABEAAAAKCAYAAABSfLWiAAAARUlEQVQoz2NgGEwgnoGBoQOHXAdU
Hi9gYmBg0GRgYDDHYlAHVFyTWNd0MDAw7EcyCJ3PQJJBPj4+/8k1gIFSF2AL6CEKAFm6Dd7JH9yK
AAAAAElFTkSuQmCC



"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhEQAKAMIFAAAAAKampqysrL+/v9PT0////////////yH5BAEKAAcALAAAAAARAAoAAAMa
eLrcTMNJNUKcrl7MNG9CQHyURR4emZLQmQAAOw==
"
	tablelist_win10_expandedImg put "
R0lGODlhEQAKAMIFAAAAAEBAQExMTHd3d6CgoP///////////yH5BAEKAAcALAAAAAARAAoAAAMb
eLrc/o6MNggcYSqsHz8ftAVCJjLhuVhq64oJADs=
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhEQAKAMIGAAAAAE7Q+VjS+Xra+5vh/Jri/P///////yH5BAEKAAcALAAAAAARAAoAAAMa
eLrcXMNJNUKcrl7MNG9CQHyURR4emZLQmQAAOw==
"
    tablelist_win10_expandedActImg put "
R0lGODlhEQAKAMIGAAAAABzE9yjH+FbS+YDb+4Lc+////////yH5BAEKAAcALAAAAAARAAoAAAMb
eLrc/o6MNgocYSqsHz8ftAVCJjLhuVhq64oJADs=
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_125
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_125 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAAMCAYAAACNzvbFAAAAbklEQVQoz73RwQ2AIAyF4R97kBsT
yAYu4sBu4BQcnYANvNTEECTBEnt7JflC+uCHWYHNikxFXoBghaXICYgKR81mdAgsL3sTLI23pMV5
xc+vRT3nLisDR89PXQMMCu69N3WjwRpqBmtFeWC2gAAX6rARzlVu5CMAAAAASUVORK5CYII=


"
	tablelist_win10_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABUAAAAMCAYAAACNzvbFAAAAU0lEQVQoz2NgGPEggYGBYT4BNfOh
6ogCTAwMDPYMDAwKeAyeD5W3J9ZQRjSNDxgYGBKxGIguTpSh2Awgy0B0Q5ENhgGSDcRmKAMlLiQE
6kdGwgcAYsgQgI4qe4AAAAAASUVORK5CYII=




"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhFQAMAMIFAAAAAKamprW1tcTExNLS0v///////////yH5BAEKAAcALAAAAAAVAAwAAAMf
eLrcvkS8yUSQlFqc3+7TBzpBMIzVhS7i2qIvGq1HAgA7
"
	tablelist_win10_expandedImg put "
R0lGODlhFQAMAMIFAAAAAEBAQGBgYICAgJ+fn////////////yH5BAEKAAcALAAAAAAVAAwAAAMg
eLrc/jBKSMQTRIpg2e7Rt4jTIZKlGaxgqrbuMcR0HSUAOw==
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhFQAMAMIGAAAAAE7Q+WfV+mjV+oHc+5ri/P///////yH5BAEKAAcALAAAAAAVAAwAAAMg
eLrcvkW8yUSQlFqcnx3d9IVPEBBkdaXLxiruG7/RmwAAOw==
"
    tablelist_win10_expandedActImg put "
R0lGODlhFQAMAMIGAAAAABzE9z7M+F/U+oDb+4Hc+////////yH5BAEKAAcALAAAAAAVAAwAAAMg
eLrc/jBKSMQTRYpg2e7Rt4jTIZKlGaxgqrbuMcR0HSUAOw==
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_150
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_150 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAABsAAAAQCAYAAADnEwSWAAAAi0lEQVQ4y83UIQuAMBCG4XcuGMRg
MS2I3Sj+/+if0LQugt1iENkczN1wbffBHnYHBz84RuJR7agNwAhUgJXEzAUBNKnBJ7ZfQCMButpo
pUDtqYuA+iVLDupAboEOKG/gAWwxWBHIJ6C+3Rdgjf2ZCkD9A5q/zEzlgnyYCOSamZGCfBtEAW1q
KPvWPwGNvhqpmBAh5QAAAABJRU5ErkJggg==

"
	tablelist_win10_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAABsAAAAQCAYAAADnEwSWAAAAk0lEQVQ4y+2Uuw2AMAxEHzAEE9DT
MwBihjTMQJEhmIQNKKnYgo5BoDFShAifyEIUXOVIJ7/48oFfyiqUfV7VwADYC58VXx0CSWSnjawz
IAVGD6iSOgcmYH4KmwWQnQBdEEAPdCGTIY19wCNQGxJj7NStNNpUGWMWLRBAdHE2aIHcGF3tI1UB
cfOa27ceevn/dZ/TCmPKG6Qk5tPpAAAAAElFTkSuQmCC

"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhGwAQAMIHAAAAAKamprOzs8jIyNLS0t7e3uPj4////yH5BAEKAAcALAAAAAAbABAAAAMx
eLrc/szACUkYNCsTOtbU0F1gOH7lI3optJKtI4xFzLyojdvLzh8+Hof1U1hyRckvAQA7
"
	tablelist_win10_expandedImg put "
R0lGODlhGwAQAMIHAAAAAEBAQFtbW4mJiZ+fn7i4uMTExP///yH5BAEKAAcALAAAAAAbABAAAAMz
eLrc/jDKSZuJtx4SxhsBURlB6TFgmU1pt7RnBR+zprRC6dqvbvKNGhC1GzYKxqRyOUwAADs=
"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhGwAQAMIHAAAAAE7Q+WTV+oje+5ri/K3m/bbo/f///yH5BAEKAAcALAAAAAAbABAAAAMx
eLrc/szACUkYNCsTOtbU0F1gOH7lI3optJKtI4xFzLyojdvLzh8+Hof1U1hyRckvAQA7
"
    tablelist_win10_expandedActImg put "
R0lGODlhGwAQAOMJAAAAABzE9zjK+GnW+oDb+4Hc+5rh/Kfl/ajl/f//////////////////////
/////yH5BAEKAA8ALAAAAAAbABAAAAQ28MlJq704680ryl/3EMFwDUHRHUFrUmh7dHE51S/d2rh4
74JdzveouYiVHjJpW1oMzqh0uowAADs=
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_175
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_175 {} {
    foreach mode {collapsed expanded collapsedAct expandedAct} {
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAQCAYAAAABOs/SAAAAiklEQVQ4y83VIQ+AIBCG4RcJBmew
mAjObnT+/+if0ER3bnaLwTGQoAfS7r7w7LgN4GfHSAPa0xuAEagAmwo2FwrQSOIuvF9YI437rtqm
wHWgL47rh0wU15HcAh1Q3vAD2N7CRSSfgPpWL8D6xcQqgvYOOn+1Y5UDDcHiqG/HJgUaerkU0Eqi
WX+nEw2kGqlLMldzAAAAAElFTkSuQmCC
"
	tablelist_win10_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAQCAYAAAABOs/SAAAAkklEQVQ4y+2UsQmAMBBFnzqEE6S3
dwBxhjTOYJEhnMQNLK3cws5BtDkhiBohhiD4qgscedwPOfiJQPly3yMaYASMo89IX+MrzGSCVs4K
yIHpQlpLXQAzsPiIF5GpG7ktBRiA3ndiRHIlP5N2vlGnVt3JpTu11noNIQVIHG9JCKkdtc0x9tel
PPw6JsZSqf69+nk2EbYbpI72C58AAAAASUVORK5CYII=
"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhHgAQAMIHAAAAAKamprOzs8jIyNLS0t7e3uPj4////yH5BAEKAAcALAAAAAAeABAAAAM0
eLrc/s/ASQ8Jo+plgs+bNnhYKJKgOY2fSrGlCwlkITtweiv5zvQ+Hiqo6LSIiosOKSEmAAA7

"
	tablelist_win10_expandedImg put "
R0lGODlhHgAQAMIHAAAAAEBAQFtbW4mJiZ+fn7i4uMTExP///yH5BAEKAAcALAAAAAAeABAAAAM1
eLrc/jDKSesxEdtFwnhDQGxXYH5MaGqW6i0uSsYHTcJmIOTyrbgnn8MmbIR6RUYhyWw6mQkAOw==


"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhHgAQAMIHAAAAAE7Q+WTV+oje+5ri/K3m/bbo/f///yH5BAEKAAcALAAAAAAeABAAAAM0
eLrc/s/ASQ8Jo+plgs+bNnhYKJKgOY2fSrGlCwlkITtweiv5zvQ+Hiqo6LSIiosOKSEmAAA7
"
    tablelist_win10_expandedActImg put "
R0lGODlhHgAQAOMJAAAAABzE9zjK+GnW+oDb+4Hc+5rh/Kfl/ajl/f//////////////////////
/////yH5BAEKAA8ALAAAAAAeABAAAAQ38MlJq7046837QxnoTUQwXENQjM8RvCeVvgc7m9Md2y+u
s7KeoLcDSm4wo+WnXOKaFwN0Sq1OIwA7
"
}

#------------------------------------------------------------------------------
# tablelist::win10TreeImgs_200
#------------------------------------------------------------------------------
proc tablelist::win10TreeImgs_200 {} {
................................................................................
	variable win10_${mode}Img \
		 [image create photo tablelist_win10_${mode}Img]
    }

    variable pngSupported
    if {$pngSupported} {
	tablelist_win10_collapsedImg put "
iVBORw0KGgoAAAANSUhEUgAAACMAAAASCAYAAADR/2dRAAAAc0lEQVRIx2NgwA10GOgMGPE4BOaY
FQPpGB0soUIXBzFhEbuCRSxiIKMJlwNWDJRj6O4gRiLU0M1BjESqo4uDGElQS3MHMTEMIjDkomnQ
JOBBk7UHTaFHd4fgyk06A+EQBgYGBmYsYq+gtBi9mxAMg6lxBQBTKRAWhaNStgAAAABJRU5ErkJg
gg==


"
	tablelist_win10_expandedImg put "
iVBORw0KGgoAAAANSUhEUgAAACMAAAASCAYAAADR/2dRAAAAb0lEQVRIx2NgGAVDDMTTSQ9Rhu6D
YmIBTD3VHMQINQzdQCciHIIMFkIxxY5hwBEiTkQ6hBjHk+QYYi2hmUPQHUPIMpo6BJtjGEhIxE7U
zkWMJKQLmjoEn2PwOYgmDiHkGGwOoplDSC3cRsEoGHQAAKAaEvmT/Wu2AAAAAElFTkSuQmCC





"
    } else {
	tablelist_win10_collapsedImg put "
R0lGODlhIwASAKEDAAAAAKenp9PT0////yH5BAEKAAMALAAAAAAjABIAAAIynC+ny+0SgptUwSir
bjjur3QZ+IkkaJ5bqlZs67zwIs9HbQ+4vc89fPHkGpfhJGE0FAAAOw==

"
	tablelist_win10_expandedImg put "
R0lGODlhIwASAKEDAAAAAEFBQaCgoP///yH5BAEKAAMALAAAAAAjABIAAAI1nI+py+0PozQC1olE
CG5frG3cIgbfVI5Iiq2lK7YJO9AynG43mav7bPspXsKGrohMKpfMRwEAOw==


"
    }

    tablelist_win10_collapsedActImg put "
R0lGODlhIwASAMIFAAAAAE7Q+VHQ+Zrh/Jri/P///////////yH5BAEKAAcALAAAAAAjABIAAAM7
eLqz/jDKEYS82NFQs5cC133kEnJWWZ6cuoqBS7Kx7NF2hucgzPeiX2QndLBSRZMImTxsRs0FARqV
VhMAOw==
"
    tablelist_win10_expandedActImg put "
R0lGODlhIwASAMIEAAAAAB3E94Db+4Hc+////////////////yH5BAEKAAAALAAAAAAjABIAAAM3
CLrc/jDKSatVg+bLRAjSt3HD90FmMF4p2LQcAy9zTKdKbd+tuT+90w+oG758xogwyWw6n1BJAgA7

"
}

#------------------------------------------------------------------------------
# tablelist::winnativeTreeImgs
#------------------------------------------------------------------------------
proc tablelist::winnativeTreeImgs {} {
................................................................................
"
}

#------------------------------------------------------------------------------
# tablelist::createTreeImgs
#------------------------------------------------------------------------------
proc tablelist::createTreeImgs {treeStyle depth} {



    #
    # Get the width of the images to create for the specified depth and
    # the destination x coordinate for copying the base images into them
    #
    set baseWidth  [image width  tablelist_${treeStyle}_collapsedImg]
    set baseHeight [image height tablelist_${treeStyle}_collapsedImg]
    set step $baseWidth
    switch -regexp -- $treeStyle {
	^win10$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { incr step -9 }
		125 { incr step -11 }
		150 { incr step -15 }
		175 { incr step -16 }
		200 { incr step -19 }
	    }
	}
	^(vistaAero|win7Aero)$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { incr step  0 }
		125 { incr step -3 }
		150 { incr step -6 }
		175 { incr step -8 }
		200 { incr step -11 }
	    }
	}
	^(vistaClassic|win7Classic)$ {
	    variable scalingpct
	    switch $scalingpct {
		100 { incr step -1 }
		125 { incr step -4 }
		150 { incr step -7 }
		175 { incr step -10 }
		200 { incr step -13 }
	    }
	}
	^ubuntu$					      { incr step -2 }
	^(mate|mint2)$					      { incr step -1 }
	^(blueMenta|menta|mint|newWave|ubuntu2|ubuntuMate)$   { incr step  1 }

	^ubuntu3$					      { incr step  2 }
	^plasti.+$					      { incr step  3 }
	^(adwaita|aqua|arc)$				      { incr step  4 }
	^(oxygen.|phase|winnative|winxp.+)$		      { incr step  5 }
	^(baghira|klearlooks)$				      { incr step  7 }

	^.+100$						      { incr step  6 }
	^.+125$						      { incr step  8 }
	^.+150$						      { incr step  9 }
	^.+175$						      { incr step  11 }
	^.+200$						      { incr step  12 }
    }
    set x [expr {($depth - 1) * $step}]


    set width [expr {$x + $baseWidth}]

    #
    # Create the images for the given depth and copy the base images into them
    #
    foreach mode {indented collapsed expanded} {
	image create photo tablelist_${treeStyle}_${mode}Img$depth \
	    -width $width -height $baseHeight
    }

    foreach mode {collapsed expanded} {
	tablelist_${treeStyle}_${mode}Img$depth copy \
	    tablelist_${treeStyle}_${mode}Img -to $x 0

	foreach modif {Sel Act SelAct} {
	    variable ${treeStyle}_${mode}${modif}Img
	    if {[info exists ${treeStyle}_${mode}${modif}Img]} {

Changes to modules/tablelist/scripts/tablelistMove.tcl.

1
2
3
4
5
6
7
8
9
10
11
#==============================================================================
# Contains the implementation of the tablelist move and movecolumn subcommands.
#
# Copyright (c) 2003-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#------------------------------------------------------------------------------
# tablelist::moveRow
#
# Processes the 1st form of the tablelist move subcommand.
#------------------------------------------------------------------------------



|







1
2
3
4
5
6
7
8
9
10
11
#==============================================================================
# Contains the implementation of the tablelist move and movecolumn subcommands.
#
# Copyright (c) 2003-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#------------------------------------------------------------------------------
# tablelist::moveRow
#
# Processes the 1st form of the tablelist move subcommand.
#------------------------------------------------------------------------------

Changes to modules/tablelist/scripts/tablelistSort.tcl.

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
...
348
349
350
351
352
353
354











355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
...
530
531
532
533
534
535
536



















537
538
539
540
541
542
543
# tablelist::addToSortColumns commands, as well as of the tablelist sort,
# sortbycolumn, and sortbycolumnlist subcommands.
#
# Structure of the module:
#   - Public procedures related to sorting
#   - Private procedures implementing the sorting
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public procedures related to sorting
# ====================================
#

................................................................................
	$firstDescRow $lastDescRow] $descItemList]

    #
    # Replace the content of the list variable if present
    #
    condUpdateListVar $win












    #
    # Delete the items from the body text widget and insert the sorted ones.
    # Interestingly, for a large number of items it is much more efficient
    # to empty each line individually than to invoke a global delete command.
    #
    variable pu
    set w $data(body)
    $w tag remove elidedRow $firstDescLine.0 $lastDescLine.end+1$pu
    $w tag remove hiddenRow $firstDescLine.0 $lastDescLine.end+1$pu
    for {set line $firstDescLine} {$line <= $lastDescLine} {incr line} {
	$w delete $line.0 $line.end
    }
    set snipStr $data(-snipstring)
    set rowTagRefCount $data(rowTagRefCount)
    set cellTagRefCount $data(cellTagRefCount)
    set isSimple [expr {$data(imgCount) == 0 && $data(winCount) == 0 &&
................................................................................

	if {$rowTagRefCount != 0} {
	    if {[info exists data($key-font)]} {
		$w tag add row-font-$data($key-font) $line.0 $line.end
	    }
	}




















	if {[info exists data($key-elide)]} {
	    $w tag add elidedRow $line.0 $line.end+1$pu
	}
	if {[info exists data($key-hide)]} {
	    $w tag add hiddenRow $line.0 $line.end+1$pu
	}
    }







|







 







>
>
>
>
>
>
>
>
>
>
>





<
<
<
<







 







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







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
...
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370




371
372
373
374
375
376
377
...
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
# tablelist::addToSortColumns commands, as well as of the tablelist sort,
# sortbycolumn, and sortbycolumnlist subcommands.
#
# Structure of the module:
#   - Public procedures related to sorting
#   - Private procedures implementing the sorting
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public procedures related to sorting
# ====================================
#

................................................................................
	$firstDescRow $lastDescRow] $descItemList]

    #
    # Replace the content of the list variable if present
    #
    condUpdateListVar $win

    #
    # Remove the tags elidedRow and hiddenRow from all lines between
    # 1 and $lastDescLine.  For the lines between $firstDescLine and
    # $lastDescLine this is needed because of the sorting, and for the
    # others because it improves the performance quite significantly.
    #
    variable pu
    set w $data(body)
    $w tag remove elidedRow 1.0 $lastDescLine.end+1$pu
    $w tag remove hiddenRow 1.0 $lastDescLine.end+1$pu

    #
    # Delete the items from the body text widget and insert the sorted ones.
    # Interestingly, for a large number of items it is much more efficient
    # to empty each line individually than to invoke a global delete command.
    #




    for {set line $firstDescLine} {$line <= $lastDescLine} {incr line} {
	$w delete $line.0 $line.end
    }
    set snipStr $data(-snipstring)
    set rowTagRefCount $data(rowTagRefCount)
    set cellTagRefCount $data(cellTagRefCount)
    set isSimple [expr {$data(imgCount) == 0 && $data(winCount) == 0 &&
................................................................................

	if {$rowTagRefCount != 0} {
	    if {[info exists data($key-font)]} {
		$w tag add row-font-$data($key-font) $line.0 $line.end
	    }
	}

	#
	# Restore the tags elidedRow and hiddenRow for this row if needed
	#
	if {[info exists data($key-elide)]} {
	    $w tag add elidedRow $line.0 $line.end+1$pu
	}
	if {[info exists data($key-hide)]} {
	    $w tag add hiddenRow $line.0 $line.end+1$pu
	}
    }

    #
    # Restore the tags elidedRow and hiddenRow
    # for the rows between 0 and $parentRow, too
    #
    for {set row 0; set line 1} {$row <= $parentRow} \
	{set row $line; incr line} {
	set item [lindex $data(itemList) $row]
	set key [lindex $item end]
	if {[info exists data($key-elide)]} {
	    $w tag add elidedRow $line.0 $line.end+1$pu
	}
	if {[info exists data($key-hide)]} {
	    $w tag add hiddenRow $line.0 $line.end+1$pu
	}
    }

Changes to modules/tablelist/scripts/tablelistThemes.tcl.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
....
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
....
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
....
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
....
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
....
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
#
# Structure of the module:
#   - Public procedures related to tile themes
#   - Private procedures related to tile themes
#   - Private procedures performing RGB <-> HSV conversions
#   - Private procedures related to global KDE configuration options
#
# Copyright (c) 2005-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public procedures related to tile themes
# ========================================
#

................................................................................
	set selectFg	SystemWindowText
	set labelBg	#ffffff
	set activeBg	#d9ebf9
	set pressedBg	#bcdcf4
	set labelBd	4
	set labelPadY	4
	set arrowColor	#595959

	variable scalingpct
	switch $scalingpct {
	    100 { set arrowStyle	flatAngle7x4 }
	    125 { set arrowStyle	flatAngle9x5 }
	    150 { set arrowStyle	flatAngle11x6 }
	    200 { set arrowStyle	flatAngle15x8 }
	}

	set treeStyle	win10

    } elseif {[string compare [winfo rgb . SystemHighlight] \
			      "13107 39321 65535"] == 0} {	;# Aero
	set selectFg	SystemWindowText
	set labelBd	4
	set labelPadY	4

	variable scalingpct
	if {$::tcl_platform(osVersion) < 6.2} {			;# Win Vista/7
	    set labelBg	#ffffff
	    set activeBg	#e3f7ff
	    set pressedBg	#Bce4f9
	    set arrowColor	#569bc0

	    switch $scalingpct {
		100 { set arrowStyle	photo7x4 }
		125 { set arrowStyle	photo9x5 }
		150 { set arrowStyle	photo11x6 }
		200 { set arrowStyle	photo15x8 }
	    }
	} else {						;# Win 8
	    set labelBg		#fcfcfc
	    set activeBg	#f4f9ff
	    set pressedBg	#f9fafb
	    set arrowColor	#569bc0

	    switch $scalingpct {
		100 { set arrowStyle	photo7x4 }
		125 { set arrowStyle	photo9x5 }
		150 { set arrowStyle	photo11x6 }
		200 { set arrowStyle	photo15x8 }
	    }
	}

	if {$::tcl_platform(osVersion) == 6.0} {		;# Win Vista
	    set selectBg	#d8effb
	    set treeStyle	vistaAero
	} elseif {$::tcl_platform(osVersion) == 6.1} {		;# Win 7
	    set selectBg	#cee2fc
................................................................................
	set selectFg	SystemHighlightText
	set labelBg	SystemButtonFace
	set activeBg	SystemButtonFace
	set pressedBg	SystemButtonFace
	set labelBd	2
	set labelPadY	0
	set arrowColor	SystemButtonShadow

	variable scalingpct
	switch $scalingpct {
	    100 { set arrowStyle	flat7x4 }
	    125 { set arrowStyle	flat9x5 }
	    150 { set arrowStyle	flat11x6 }
	    200 { set arrowStyle	flat15x8 }
	}

	if {$::tcl_platform(osVersion) == 6.0} {		;# Win Vista
	    set treeStyle	vistaClassic
	} else {						;# Win 7/8
	    set treeStyle	win7Classic
	}
    }
................................................................................
	set selectFg	SystemWindowText
	set labelBg	#ffffff
	set activeBg	#d9ebf9
	set pressedBg	#bcdcf4
	set labelBd	4
	set labelPadY	4
	set arrowColor	#595959

	variable scalingpct
	switch $scalingpct {
	    100 { set arrowStyle	flatAngle7x4 }
	    125 { set arrowStyle	flatAngle9x5 }
	    150 { set arrowStyle	flatAngle11x6 }
	    200 { set arrowStyle	flatAngle15x8 }
	}

	set treeStyle	win10

    } else {
	switch [winfo rgb . SystemHighlight] {
	    "12593 27242 50629" {				;# Win XP Blue
		set xpStyle	1
		set selectBg	SystemHighlight
................................................................................

	    "13107 39321 65535" {				;# Aero
		set xpStyle	0
		set selectFg	SystemWindowText
		set labelBd	4
		set labelPadY	4

		variable scalingpct
		if {$::tcl_platform(osVersion) < 6.2} {		;# Win Vista/7
		    set labelBg	#ffffff
		    set activeBg	#e3f7ff
		    set pressedBg	#Bce4f9
		    set arrowColor	#569bc0

		    switch $scalingpct {
			100 { set arrowStyle	photo7x4 }
			125 { set arrowStyle	photo9x5 }
			150 { set arrowStyle	photo11x6 }
			200 { set arrowStyle	photo15x8 }
		    }
		} else {					;# Win 8
		    set labelBg	#fcfcfc
		    set activeBg	#f4f9ff
		    set pressedBg	#f9fafb
		    set arrowColor	#569bc0

		    switch $scalingpct {
			100 { set arrowStyle	photo7x4 }
			125 { set arrowStyle	photo9x5 }
			150 { set arrowStyle	photo11x6 }
			200 { set arrowStyle	photo15x8 }
		    }
		}

		if {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista
		    set selectBg	#d8effb
		    set treeStyle	vistaAero
		} elseif {$::tcl_platform(osVersion) == 6.1} {	;# Win 7
		    set selectBg	#cee2fc
................................................................................
		set selectFg	SystemHighlightText
		set labelBg	SystemButtonFace
		set activeBg	SystemButtonFace
		set pressedBg	SystemButtonFace
		set labelBd	2
		set labelPadY	0
		set arrowColor	SystemButtonShadow

		variable scalingpct
		switch $scalingpct {
		    100 { set arrowStyle	flat7x4 }
		    125 { set arrowStyle	flat9x5 }
		    150 { set arrowStyle	flat11x6 }
		    200 { set arrowStyle	flat15x8 }
		}

		if {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista
		    set treeStyle	vistaClassic
		} else {					;# Win 7/8
		    set treeStyle	win7Classic
		}
	    }







|







 







<
<
<
|
<
<
<
<
<








<

|



<
<
|
<
<
<
<





<
<
|
<
<
<
<







 







<
<
<
|
<
<
<
<







 







<
<
<
|
<
<
<
<
<







 







<





<
<
|
<
<
<
<





<
<
|
<
<
<
<







 







<
<
<
|
<
<
<
<







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
....
1566
1567
1568
1569
1570
1571
1572



1573





1574
1575
1576
1577
1578
1579
1580
1581

1582
1583
1584
1585
1586


1587




1588
1589
1590
1591
1592


1593




1594
1595
1596
1597
1598
1599
1600
....
1609
1610
1611
1612
1613
1614
1615



1616




1617
1618
1619
1620
1621
1622
1623
....
1728
1729
1730
1731
1732
1733
1734



1735





1736
1737
1738
1739
1740
1741
1742
....
1796
1797
1798
1799
1800
1801
1802

1803
1804
1805
1806
1807


1808




1809
1810
1811
1812
1813


1814




1815
1816
1817
1818
1819
1820
1821
....
1832
1833
1834
1835
1836
1837
1838



1839




1840
1841
1842
1843
1844
1845
1846
#
# Structure of the module:
#   - Public procedures related to tile themes
#   - Private procedures related to tile themes
#   - Private procedures performing RGB <-> HSV conversions
#   - Private procedures related to global KDE configuration options
#
# Copyright (c) 2005-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Public procedures related to tile themes
# ========================================
#

................................................................................
	set selectFg	SystemWindowText
	set labelBg	#ffffff
	set activeBg	#d9ebf9
	set pressedBg	#bcdcf4
	set labelBd	4
	set labelPadY	4
	set arrowColor	#595959



	set arrowStyle	flatAngle[defaultWinArrowSize]





	set treeStyle	win10

    } elseif {[string compare [winfo rgb . SystemHighlight] \
			      "13107 39321 65535"] == 0} {	;# Aero
	set selectFg	SystemWindowText
	set labelBd	4
	set labelPadY	4


	if {$::tcl_platform(osVersion) < 6.2} {			;# Win Vista/7
	    set labelBg		#ffffff
	    set activeBg	#e3f7ff
	    set pressedBg	#Bce4f9
	    set arrowColor	#569bc0


	    set arrowStyle	photo[defaultWinArrowSize]




	} else {						;# Win 8
	    set labelBg		#fcfcfc
	    set activeBg	#f4f9ff
	    set pressedBg	#f9fafb
	    set arrowColor	#569bc0


	    set arrowStyle	photo[defaultWinArrowSize]




	}

	if {$::tcl_platform(osVersion) == 6.0} {		;# Win Vista
	    set selectBg	#d8effb
	    set treeStyle	vistaAero
	} elseif {$::tcl_platform(osVersion) == 6.1} {		;# Win 7
	    set selectBg	#cee2fc
................................................................................
	set selectFg	SystemHighlightText
	set labelBg	SystemButtonFace
	set activeBg	SystemButtonFace
	set pressedBg	SystemButtonFace
	set labelBd	2
	set labelPadY	0
	set arrowColor	SystemButtonShadow



	set arrowStyle	flat[defaultWinArrowSize]





	if {$::tcl_platform(osVersion) == 6.0} {		;# Win Vista
	    set treeStyle	vistaClassic
	} else {						;# Win 7/8
	    set treeStyle	win7Classic
	}
    }
................................................................................
	set selectFg	SystemWindowText
	set labelBg	#ffffff
	set activeBg	#d9ebf9
	set pressedBg	#bcdcf4
	set labelBd	4
	set labelPadY	4
	set arrowColor	#595959



	set arrowStyle	flatAngle[defaultWinArrowSize]





	set treeStyle	win10

    } else {
	switch [winfo rgb . SystemHighlight] {
	    "12593 27242 50629" {				;# Win XP Blue
		set xpStyle	1
		set selectBg	SystemHighlight
................................................................................

	    "13107 39321 65535" {				;# Aero
		set xpStyle	0
		set selectFg	SystemWindowText
		set labelBd	4
		set labelPadY	4


		if {$::tcl_platform(osVersion) < 6.2} {		;# Win Vista/7
		    set labelBg	#ffffff
		    set activeBg	#e3f7ff
		    set pressedBg	#Bce4f9
		    set arrowColor	#569bc0


		    set arrowStyle	photo[defaultWinArrowSize]




		} else {					;# Win 8
		    set labelBg	#fcfcfc
		    set activeBg	#f4f9ff
		    set pressedBg	#f9fafb
		    set arrowColor	#569bc0


		    set arrowStyle	photo[defaultWinArrowSize]




		}

		if {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista
		    set selectBg	#d8effb
		    set treeStyle	vistaAero
		} elseif {$::tcl_platform(osVersion) == 6.1} {	;# Win 7
		    set selectBg	#cee2fc
................................................................................
		set selectFg	SystemHighlightText
		set labelBg	SystemButtonFace
		set activeBg	SystemButtonFace
		set pressedBg	SystemButtonFace
		set labelBd	2
		set labelPadY	0
		set arrowColor	SystemButtonShadow



		set arrowStyle	flat[defaultWinArrowSize]





		if {$::tcl_platform(osVersion) == 6.0} {	;# Win Vista
		    set treeStyle	vistaClassic
		} else {					;# Win 7/8
		    set treeStyle	win7Classic
		}
	    }

Changes to modules/tablelist/scripts/tablelistUtil.tcl.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
....
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
#==============================================================================
# Contains private utility procedures for tablelist widgets.
#
# Structure of the module:
#   - Namespace initialization
#   - Private utility procedures
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

................................................................................
    checkbutton $w -activebackground white -background white \
	-highlightthickness 0 -padx 0 -pady 0 -selectcolor white -takefocus 0

    set frm [winfo parent $w]
    variable winSys
    switch $winSys {
	x11 {
	    if {$::tk_version > 8.4} {
		$frm configure -width 11 -height 11
		$w configure -borderwidth 0 -font "Courier -11"
		place $w -x -4 -y -2
	    } else {
		variable checkedImg
		variable uncheckedImg
		if {![info exists checkedImg]} {
		    createCheckbuttonImgs
		}

		$w configure -borderwidth 2 -indicatoron 0 \
		    -image $uncheckedImg -selectimage $checkedImg
		if {$::tk_version == 8.4} {
		    $w configure -offrelief sunken ;# -offrelief added in Tk8.4
		}
		pack $w
	    }
	}

	win32 {
	    $frm configure -width 13 -height 13
	    $w configure -borderwidth 0 -font {"MS Sans Serif" 8}
	    switch [winfo reqheight $w] {
		17	{ set y -1 }
		20	{ set y -3 }
		25	{ set y -5 }
		30 -
		31	{ set y -8 }
		default	{ set y -1 }
	    }
	    place $w -x -1 -y $y
	}

	classic {
	    $frm configure -width 16 -height 14







|







 







<
<
<
<
<
|
|
|
|
|

|
|
|
|
|
|
<






|
|
|
|
|







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
....
6556
6557
6558
6559
6560
6561
6562





6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574

6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
#==============================================================================
# Contains private utility procedures for tablelist widgets.
#
# Structure of the module:
#   - Namespace initialization
#   - Private utility procedures
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

................................................................................
    checkbutton $w -activebackground white -background white \
	-highlightthickness 0 -padx 0 -pady 0 -selectcolor white -takefocus 0

    set frm [winfo parent $w]
    variable winSys
    switch $winSys {
	x11 {





	    variable checkedImg
	    variable uncheckedImg
	    if {![info exists checkedImg]} {
		createCheckbuttonImgs
	    }

	    $w configure -borderwidth 2 -indicatoron 0 \
		-image $uncheckedImg -selectimage $checkedImg
	    if {$::tk_version >= 8.4} {
		$w configure -offrelief sunken	;# -offrelief was added in Tk8.4
	    }
	    pack $w

	}

	win32 {
	    $frm configure -width 13 -height 13
	    $w configure -borderwidth 0 -font {"MS Sans Serif" 8}
	    switch [winfo reqheight $w] {
		15	{ set y -1 }
		18	{ set y -3 }
		23	{ set y -5 }
		28 -
		29	{ set y -8 }
		default	{ set y -1 }
	    }
	    place $w -x -1 -y $y
	}

	classic {
	    $frm configure -width 16 -height 14

Changes to modules/tablelist/scripts/tablelistWidget.tcl.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24





25
26
27
28
29
30
31
...
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
...
529
530
531
532
533
534
535
536
537
538

539
540
541
542
543
544
545
546
547
548
...
551
552
553
554
555
556
557





558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
....
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549

1550
1551
1552
1553
1554
1555
1556
....
2435
2436
2437
2438
2439
2440
2441

2442
2443
2444
2445
2446
2447
2448
# Structure of the module:
#   - Namespace initialization
#   - Private procedure creating the default bindings
#   - Public procedure creating a new tablelist widget
#   - Private procedures implementing the tablelist widget command
#   - Private callback procedures
#
# Copyright (c) 2000-2019  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

namespace eval tablelist {
    #
    # Get the current windowing system ("x11", "win32", "classic", or "aqua")
    #
    variable winSys [mwutil::windowingSystem]






    #
    # Create aliases for a few tile commands if not yet present
    #
    proc createTileAliases {} {
	if {[string length [interp alias {} ::tablelist::style]] != 0} {
	    return ""
	}
................................................................................
    restrictCmdOpts 

    #
    # Use lists to facilitate the handling of miscellaneous options
    #
    variable activeStyles  [list frame none underline]
    variable alignments    [list left right center]
    variable arrowStyles   [list flat5x3 flat5x4 flat6x4 flat7x4 flat7x5 \
				 flat7x7 flat8x4 flat8x5 flat9x5 flat9x6 \
				 flat11x6 flat15x8 flatAngle7x4 flatAngle7x5 \
				 flatAngle9x5 flatAngle9x6 flatAngle9x7 \
				 flatAngle10x6 flatAngle10x7 flatAngle11x6 \
				 flatAngle15x8 photo7x4 photo7x7 photo9x5 \
				 photo11x6 photo15x8 sunken8x7 sunken10x9 \
				 sunken12x11]
    variable arrowTypes    [list up down]
    variable colWidthOpts  [list -requested -stretched -total]
    variable cornerOpts	   [list -ne -sw]
    variable curSelOpts    [list -all -nonhidden -viewable]
    variable expCollOpts   [list -fully -partly]
    variable findOpts      [list -descend -parent]
    variable gapTypeOpts   [list -any -horizontal -vertical]
................................................................................
    variable selectTypes   [list row cell]
    variable targetOpts    [list before inside]
    variable sortModes     [list ascii asciinocase command dictionary \
				 integer real]
    variable sortOpts      [list -increasing -decreasing]
    variable sortOrders    [list increasing decreasing]
    variable states	   [list disabled normal]
    variable treeStyles    [list adwaita ambiance aqua arc baghira bicolor1 \
				 bicolor2 bicolor3 bicolor4 blueMenta \
				 classic1 classic2 classic3 classic4 dust \

				 dustSand gtk klearlooks mate menta mint \
				 mint2 newWave oxygen1 oxygen2 phase plain1 \
				 plain2 plain3 plain4 plastik plastique \
				 radiance ubuntu ubuntu2 ubuntu3 ubuntuMate \
				 vistaAero vistaClassic win7Aero win7Classic \
				 win10 winnative winxpBlue winxpOlive \
				 winxpSilver yuyo]
    variable valignments   [list center top bottom]

    proc restrictArrowStyles {} {
................................................................................
	    variable arrowStyles
	    set idx [lsearch -exact $arrowStyles "photo7x7"]
	    set arrowStyles [lreplace $arrowStyles $idx $idx]
	}
    }
    restrictArrowStyles 






    #
    # The array maxIndentDepths holds the current max.
    # indentation depth for every tree style in use
    #
    variable maxIndentDepths

    #
    # Whether to support strictly Tk core listbox compatible bindings only
    #
    variable strictTk 0

    #
    # Define the command mapTabs, which returns the string obtained by
    # replacing all \t characters in its argument with \\t, as well as
    # the commands strMap and isInteger, needed because the "string map"
    # and "string is" commands were not available in Tcl 8.0 and 8.1.0
    #
    if {[catch {string map {} ""}] == 0} {
................................................................................

#------------------------------------------------------------------------------
# tablelist::collapseSubCmd
#------------------------------------------------------------------------------
proc tablelist::collapseSubCmd {win argList} {
    set argCount [llength $argList]
    if {$argCount < 1 || $argCount > 2} {
	mwutil::wrongNumArgs "$win collapse indexLList ?-fully|-partly?"
    }

    synchronize $win
    displayItems $win
    set indexList {}
    foreach elem [lindex $argList 0] {
	set index [rowIndex $win $elem 0 1]
	lappend indexList $index
    }


    if {$argCount == 1} {
	set fullCollapsion 1
    } else {
	variable expCollOpts
	set opt [mwutil::fullOpt "option" [lindex $argList 1] $expCollOpts]
	set fullCollapsion [expr {[string compare $opt "-fully"] == 0}]
................................................................................
    synchronize $win
    displayItems $win
    set indexList {}
    foreach elem [lindex $argList 0] {
	set index [rowIndex $win $elem 0 1]
	lappend indexList $index
    }


    if {$argCount == 1} {
	set fullExpansion 1
    } else {
	variable expCollOpts
	set opt [mwutil::fullOpt "option" [lindex $argList 1] $expCollOpts]
	set fullExpansion [expr {[string compare $opt "-fully"] == 0}]







|









|



>
>
>
>
>







 







|
|
|


|
|
|







 







|
|
|
>
|
|
|







 







>
>
>
>
>






<
<
<
<
<







 







|









>







 







>







4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
...
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
...
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
...
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574





575
576
577
578
579
580
581
....
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
....
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
# Structure of the module:
#   - Namespace initialization
#   - Private procedure creating the default bindings
#   - Public procedure creating a new tablelist widget
#   - Private procedures implementing the tablelist widget command
#   - Private callback procedures
#
# Copyright (c) 2000-2020  Csaba Nemethi (E-mail: csaba.nemethi@t-online.de)
#==============================================================================

#
# Namespace initialization
# ========================
#

namespace eval tablelist {
    #
    # Get the windowing system ("x11", "win32", "classic", or "aqua")
    #
    variable winSys [mwutil::windowingSystem]

    #
    # Get the display's current scaling percentage (100, 125, 150, 175, or 200)
    #
    variable scalingpct [mwutil::scalingPercentage]

    #
    # Create aliases for a few tile commands if not yet present
    #
    proc createTileAliases {} {
	if {[string length [interp alias {} ::tablelist::style]] != 0} {
	    return ""
	}
................................................................................
    restrictCmdOpts 

    #
    # Use lists to facilitate the handling of miscellaneous options
    #
    variable activeStyles  [list frame none underline]
    variable alignments    [list left right center]
    variable arrowStyles   [list flat6x4 flat7x4 flat7x5 flat7x7 flat8x4 \
				 flat8x5 flat9x5 flat9x6 flat11x6 flat13x7 \
				 flat15x8 flatAngle7x4 flatAngle7x5 \
				 flatAngle9x5 flatAngle9x6 flatAngle9x7 \
				 flatAngle10x6 flatAngle10x7 flatAngle11x6 \
				 flatAngle13x7 flatAngle15x8 photo7x4 \
				 photo7x7 photo9x5 photo11x6 photo13x7 \
				 photo15x8 sunken8x7 sunken10x9 sunken12x11]
    variable arrowTypes    [list up down]
    variable colWidthOpts  [list -requested -stretched -total]
    variable cornerOpts	   [list -ne -sw]
    variable curSelOpts    [list -all -nonhidden -viewable]
    variable expCollOpts   [list -fully -partly]
    variable findOpts      [list -descend -parent]
    variable gapTypeOpts   [list -any -horizontal -vertical]
................................................................................
    variable selectTypes   [list row cell]
    variable targetOpts    [list before inside]
    variable sortModes     [list ascii asciinocase command dictionary \
				 integer real]
    variable sortOpts      [list -increasing -decreasing]
    variable sortOrders    [list increasing decreasing]
    variable states	   [list disabled normal]
    variable treeStyles    [list adwaita ambiance aqua arc baghira bicolor100 \
				 bicolor125 bicolor150 bicolor175 bicolor200 \
				 blueMenta classic100 classic125 classic150 \
				 classic175 classic200 dust dustSand gtk \
				 klearlooks mate menta mint mint2 newWave \
				 oxygen1 oxygen2 phase plain100 plain125 \
				 plain150 plain175 plain200 plastik plastique \
				 radiance ubuntu ubuntu2 ubuntu3 ubuntuMate \
				 vistaAero vistaClassic win7Aero win7Classic \
				 win10 winnative winxpBlue winxpOlive \
				 winxpSilver yuyo]
    variable valignments   [list center top bottom]

    proc restrictArrowStyles {} {
................................................................................
	    variable arrowStyles
	    set idx [lsearch -exact $arrowStyles "photo7x7"]
	    set arrowStyles [lreplace $arrowStyles $idx $idx]
	}
    }
    restrictArrowStyles 

    #
    # Whether to support strictly Tk core listbox compatible bindings only
    #
    variable strictTk 0

    #
    # The array maxIndentDepths holds the current max.
    # indentation depth for every tree style in use
    #
    variable maxIndentDepths






    #
    # Define the command mapTabs, which returns the string obtained by
    # replacing all \t characters in its argument with \\t, as well as
    # the commands strMap and isInteger, needed because the "string map"
    # and "string is" commands were not available in Tcl 8.0 and 8.1.0
    #
    if {[catch {string map {} ""}] == 0} {
................................................................................

#------------------------------------------------------------------------------
# tablelist::collapseSubCmd
#------------------------------------------------------------------------------
proc tablelist::collapseSubCmd {win argList} {
    set argCount [llength $argList]
    if {$argCount < 1 || $argCount > 2} {
	mwutil::wrongNumArgs "$win collapse indexList ?-fully|-partly?"
    }

    synchronize $win
    displayItems $win
    set indexList {}
    foreach elem [lindex $argList 0] {
	set index [rowIndex $win $elem 0 1]
	lappend indexList $index
    }
    set indexList [lsort -integer -decreasing $indexList]

    if {$argCount == 1} {
	set fullCollapsion 1
    } else {
	variable expCollOpts
	set opt [mwutil::fullOpt "option" [lindex $argList 1] $expCollOpts]
	set fullCollapsion [expr {[string compare $opt "-fully"] == 0}]
................................................................................
    synchronize $win
    displayItems $win
    set indexList {}
    foreach elem [lindex $argList 0] {
	set index [rowIndex $win $elem 0 1]
	lappend indexList $index
    }
    set indexList [lsort -integer -decreasing $indexList]

    if {$argCount == 1} {
	set fullExpansion 1
    } else {
	variable expCollOpts
	set opt [mwutil::fullOpt "option" [lindex $argList 1] $expCollOpts]
	set fullExpansion [expr {[string compare $opt "-fully"] == 0}]