Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch bug-2858503fff Excluding Merge-Ins
This is equivalent to a diff from fa915533 to 2e610c43
2019-05-26
| ||
18:38 | Merge implementation of TIP #541 following positive vote by the TCT. check-in: ab1ef117 user: fvogel tags: core-8-6-branch | |
2019-05-05
| ||
19:51 | Fix [1ff193f1e3]: improve documentation for ttk::scrollbar check-in: 623d8a97 user: fvogel tags: core-8-6-branch | |
2019-05-03
| ||
20:48 | Fix [2858503fff]: 'end' index for ttk::combobox current Closed-Leaf check-in: 2e610c43 user: fvogel tags: bug-2858503fff, tip-541 | |
19:52 | Fix class name in ttk::scale man page (this copy/paste error was introduced in [d0576d63ff]) check-in: da16e95d user: fvogel tags: trunk | |
19:51 | Fix class name in ttk::scale man page (this copy/paste error was introduced in [d0576d63ff]) check-in: fa915533 user: fvogel tags: core-8-6-branch | |
2019-04-30
| ||
17:28 | Fix [4f9a99e20b]: crash when specifying wrong -syssize option in ttk::style element create ... vsapi check-in: a9542402 user: fvogel tags: core-8-6-branch | |
Changes to doc/ttk_combobox.n.
︙ | ︙ | |||
63 64 65 66 67 68 69 | '\".TP '\"\fIpathName \fBconfigure\fR ?\fIoption\fR? ?\fIvalue option value ...\fR? '\"Modify or query widget options. '\"See \fIttk::widget(n)\fR. .TP \fIpathName \fBcurrent\fR ?\fInewIndex\fR? If \fInewIndex\fR is supplied, sets the combobox value | | > > | 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | '\".TP '\"\fIpathName \fBconfigure\fR ?\fIoption\fR? ?\fIvalue option value ...\fR? '\"Modify or query widget options. '\"See \fIttk::widget(n)\fR. .TP \fIpathName \fBcurrent\fR ?\fInewIndex\fR? If \fInewIndex\fR is supplied, sets the combobox value to the element at position \fInewIndex\fR in the list of \fB\-values\fR (in addition to integers, the \fBend\fR index is supported and indicates the last element of the list). Otherwise, returns the index of the current value in the list of \fB\-values\fR or \fB\-1\fR if the current value does not appear in the list. .TP \fIpathName \fBget\fR Returns the current value of the combobox. '\".TP '\"\fIpathName \fBidentify \fIx y\fR |
︙ | ︙ |
Changes to generic/ttk/ttkEntry.c.
︙ | ︙ | |||
1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 | EntryConfigure, /* configureProc */ EntryPostConfigure, /* postConfigureProc */ TtkWidgetGetLayout, /* getLayoutProc */ TtkWidgetSize, /* sizeProc */ EntryDoLayout, /* layoutProc */ EntryDisplay /* displayProc */ }; /*------------------------------------------------------------------------ * +++ Combobox widget record. */ typedef struct { Tcl_Obj *postCommandObj; | > > > > > > > > > > | 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 | EntryConfigure, /* configureProc */ EntryPostConfigure, /* postConfigureProc */ TtkWidgetGetLayout, /* getLayoutProc */ TtkWidgetSize, /* sizeProc */ EntryDoLayout, /* layoutProc */ EntryDisplay /* displayProc */ }; /*------------------------------------------------------------------------ * Named indices for the combobox "current" command */ static const char *const comboboxCurrentIndexNames[] = { "end", NULL }; enum comboboxCurrentIndices { INDEX_END }; /*------------------------------------------------------------------------ * +++ Combobox widget record. */ typedef struct { Tcl_Obj *postCommandObj; |
︙ | ︙ | |||
1796 1797 1798 1799 1800 1801 1802 | currentIndex = -1; } } cbPtr->combobox.currentIndex = currentIndex; Tcl_SetObjResult(interp, Tcl_NewIntObj(currentIndex)); return TCL_OK; } else if (objc == 3) { | > > > > > > > > > > > > > > > > > > > > > > | > > > | | > | | | | | | > | 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 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 | currentIndex = -1; } } cbPtr->combobox.currentIndex = currentIndex; Tcl_SetObjResult(interp, Tcl_NewIntObj(currentIndex)); return TCL_OK; } else if (objc == 3) { int result, index; result = Tcl_GetIndexFromObj(NULL, objv[2], comboboxCurrentIndexNames, "", 0, &index); if (result == TCL_OK) { /* * The index is one of the named indices. */ switch (index) { case INDEX_END: /* "end" index */ currentIndex = nValues - 1; break; } } else { /* * The index should be just an integer. */ if (Tcl_GetIntFromObj(NULL, objv[2], ¤tIndex) != TCL_OK) { Tcl_SetObjResult(interp, Tcl_ObjPrintf( "Incorrect index %s", Tcl_GetString(objv[2]))); Tcl_SetErrorCode(interp, "TTK", "COMBOBOX", "IDX_VALUE", NULL); return TCL_ERROR; } if (currentIndex < 0 || currentIndex >= nValues) { Tcl_SetObjResult(interp, Tcl_ObjPrintf( "Index %s out of range", Tcl_GetString(objv[2]))); Tcl_SetErrorCode(interp, "TTK", "COMBOBOX", "IDX_RANGE", NULL); return TCL_ERROR; } } cbPtr->combobox.currentIndex = currentIndex; return EntrySetValue(recordPtr, Tcl_GetString(values[currentIndex])); } else { Tcl_WrongNumArgs(interp, 2, objv, "?newIndex?"); return TCL_ERROR; |
︙ | ︙ |
Changes to tests/ttk/combobox.test.
︙ | ︙ | |||
39 40 41 42 43 44 45 46 47 48 49 50 51 52 | } -result 1 test combobox-2.4 "current -- value not in list" -body { .cb set "z" .cb current } -result -1 test combobox-2.end "Cleanup" -body { destroy .cb } test combobox-3 "Read postoffset value dynamically from current style" -body { ttk::combobox .cb -values [list a b c] -style "DerivedStyle.TCombobox" pack .cb -expand true -fill both ttk::style configure DerivedStyle.TCombobox -postoffset [list 25 0 0 0] ttk::combobox::Post .cb | > > > > > > > > > > > | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | } -result 1 test combobox-2.4 "current -- value not in list" -body { .cb set "z" .cb current } -result -1 test combobox-2.5 "current -- set to end index" -body { .cb configure -values [list a b c d e thelastone] .cb current end .cb get } -result thelastone test combobox-2.6 "current -- set to unknown index" -body { .cb configure -values [list a b c d e] .cb current notanindex } -returnCodes error -result {Incorrect index notanindex} test combobox-2.end "Cleanup" -body { destroy .cb } test combobox-3 "Read postoffset value dynamically from current style" -body { ttk::combobox .cb -values [list a b c] -style "DerivedStyle.TCombobox" pack .cb -expand true -fill both ttk::style configure DerivedStyle.TCombobox -postoffset [list 25 0 0 0] ttk::combobox::Post .cb |
︙ | ︙ |