Check-in [f8a19e3f39]

Login

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

Overview
Comment:Update 552 to reflect -stripedbackground
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: f8a19e3f39e1d349a2e3dde25636346794757f6080852dea197a9fa5aed3051a
User & Date: pspjuth 2020-03-22 16:24:59.944
Context
2020-03-22
21:36
Clarify imageanchor vs tags. check-in: f133d47f3d user: pspjuth tags: trunk
16:24
Update 552 to reflect -stripedbackground check-in: f8a19e3f39 user: pspjuth tags: trunk
2020-03-20
14:12
Withdrawn TIP #566 check-in: 5d03186804 user: jan.nijtmans tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to tip/552.md.
72
73
74
75
76
77
78
79

80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100











101
102
103
104
105
106
107

Default bindings are updated to use these features.

The \<\<TreeviewSelect\>\> virtual event triggers on any selection change including cellselection.

## Striped rows

A new option **-striped** *bool* is added. This makes every other item get marked

with the `alternate` state, and allows the theme to draw them in a
different color. Built in themes are updated to put something fitting
at that color.

## Column separators

The **-show** option is extended with the value `columnseparators` to
display a separator between columns.
Built in themes are updated to define the separators.

## Image anchor for tree

A new item option **-imageanchor** *anchor* is added.
This controls the placement of the image relative to the text in an
item's tree column. Default is "w".

## Item height

A new item option **-height** *height* is added.
This controls the height of the item, in multiples of **-rowheight**. Default is 1.












# Implementation

Started on branch [`pspjuth-treeview`](https://core.tcl-lang.org/tk/timeline?r=pspjuth-treeview)

# Copyright

This document has been placed in the public domain.







|
>
|
|
<


















>
>
>
>
>
>
>
>
>
>
>







72
73
74
75
76
77
78
79
80
81
82

83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118

Default bindings are updated to use these features.

The \<\<TreeviewSelect\>\> virtual event triggers on any selection change including cellselection.

## Striped rows

A new option **-striped** *bool* is added. This makes every other item to be
drawn with the **-stripedbackground** color, if that option is set by the
theme or tags.
Built in themes are updated to put something fitting at that color.


## Column separators

The **-show** option is extended with the value `columnseparators` to
display a separator between columns.
Built in themes are updated to define the separators.

## Image anchor for tree

A new item option **-imageanchor** *anchor* is added.
This controls the placement of the image relative to the text in an
item's tree column. Default is "w".

## Item height

A new item option **-height** *height* is added.
This controls the height of the item, in multiples of **-rowheight**. Default is 1.

# Rejected alternatives

## Striped rows

An earlier spec implemented **-striped** as an alternate state. This did not
work well, since options are resolved in a certain order. Style defaults,
tags, then Style maps. Since alternate was part of the style maps, it overrode
any background in tags. The striped background should have less priority than
tags, and be at the level of Style defaults.
Thus it was moved to a **-stripedbackground** option.

# Implementation

Started on branch [`pspjuth-treeview`](https://core.tcl-lang.org/tk/timeline?r=pspjuth-treeview)

# Copyright

This document has been placed in the public domain.