Tk Source Code

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

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

Overview
Comment:Fix [da3914eba2]: 'identify element' on ttk::treeview does not identify images added via 'insert ... -image ...'
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-6-branch
Files: files | file ages | folders
SHA3-256: cfe9dcf79338d03c6c32645c35de882dd167cf5a72598ee4bed30bf2dc5d3782
User & Date: fvogel 2019-03-31 14:09:20
Context
2019-04-06
21:38
Fix bug [897ffea89f]: Tk allows management loops. Provide access to a window's geometry manager. check-in: 07ff4144 user: culler tags: core-8-6-branch
2019-04-05
19:55
Fix bug [897ffea89f]: Tk allows management loops check-in: d75db00c user: culler tags: bug-897ffea89f
2019-04-02
19:27
Merge 8.6 Leaf check-in: 5e12f0c2 user: jan.nijtmans tags: androwish
16:57
Expose the geometry master-slave tree structure. Abandoning this branch. It will be implemented as a bug-fix, without the API changes. check-in: 89ff08b2 user: culler tags: mistake
2019-03-31
14:09
Fix [da3914eba2]: 'identify element' on ttk::treeview does not identify images added via 'insert ... -image ...' check-in: 72da0ba8 user: fvogel tags: trunk
14:09
Fix [da3914eba2]: 'identify element' on ttk::treeview does not identify images added via 'insert ... -image ...' check-in: cfe9dcf7 user: fvogel tags: core-8-6-branch
13:56
Fix [c9887a1fc9]: Trailing zeros on scale widget ticks. The fix was subject of TIP #535 which was accepted through TCT vote. check-in: 04e6c97d user: fvogel tags: core-8-6-branch
2019-03-30
17:00
Fix [da3914eba2]: 'identify element' on ttk::treeview does not identify images added via 'insert ... -image ...' Closed-Leaf check-in: e253671c user: fvogel tags: bug-da3914eba2
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/ttk/ttkTreeview.c.

2229
2230
2231
2232
2233
2234
2235
2236


2237
2238
2239
2240
2241
2242
2243
....
2341
2342
2343
2344
2345
2346
2347
2348


2349
2350
2351
2352
2353
2354
2355
	} else if (item) {
	    Ttk_Layout layout = tv->tree.itemLayout;
	    Ttk_Box itemBox;
	    DisplayItem displayItem;
	    Ttk_Element element;

	    BoundingBox(tv, item, NULL, &itemBox);
	    PrepareItem(tv, item, &displayItem); /*@@@ FIX: -text, etc*/


	    Ttk_RebindSublayout(layout, &displayItem);
	    Ttk_PlaceLayout(layout, ItemState(tv,item), itemBox);
	    element = Ttk_IdentifyElement(layout, x, y);

	    if (element) {
		what = "item";
		detail = Ttk_ElementName(element);
................................................................................
		    break;
	    }

	    if (!BoundingBox(tv, item, column, &bbox)) {
		return TCL_OK;
	    }

	    PrepareItem(tv, item, &displayItem); /*@@@ FIX: fill in -text,etc */


	    Ttk_RebindSublayout(layout, &displayItem);
	    Ttk_PlaceLayout(layout, ItemState(tv,item), bbox);
	    element = Ttk_IdentifyElement(layout, x, y);

	    if (element) {
		const char *elementName = Ttk_ElementName(element);
		Tcl_SetObjResult(interp, Tcl_NewStringObj(elementName, -1));






|
>
>







 







|
>
>







2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
....
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
	} else if (item) {
	    Ttk_Layout layout = tv->tree.itemLayout;
	    Ttk_Box itemBox;
	    DisplayItem displayItem;
	    Ttk_Element element;

	    BoundingBox(tv, item, NULL, &itemBox);
	    PrepareItem(tv, item, &displayItem);
            if (item->textObj) { displayItem.textObj = item->textObj; }
            if (item->imageObj) { displayItem.imageObj = item->imageObj; }
	    Ttk_RebindSublayout(layout, &displayItem);
	    Ttk_PlaceLayout(layout, ItemState(tv,item), itemBox);
	    element = Ttk_IdentifyElement(layout, x, y);

	    if (element) {
		what = "item";
		detail = Ttk_ElementName(element);
................................................................................
		    break;
	    }

	    if (!BoundingBox(tv, item, column, &bbox)) {
		return TCL_OK;
	    }

	    PrepareItem(tv, item, &displayItem);
            if (item->textObj) { displayItem.textObj = item->textObj; }
            if (item->imageObj) { displayItem.imageObj = item->imageObj; }
	    Ttk_RebindSublayout(layout, &displayItem);
	    Ttk_PlaceLayout(layout, ItemState(tv,item), bbox);
	    element = Ttk_IdentifyElement(layout, x, y);

	    if (element) {
		const char *elementName = Ttk_ElementName(element);
		Tcl_SetObjResult(interp, Tcl_NewStringObj(elementName, -1));