Mercurial > octave-nkf
changeset 20116:8bfadb26afcd
Allow case-insensitive SelectionMode value in listdlg (bug #44822).
* dialog.cc (ListDialog): Check for lower case selection mode "single" and
"multiple".
* listdlg.m: Use tolower() to guarantee SelectionMode is lower case.
author | Rik <rik@octave.org> |
---|---|
date | Thu, 16 Apr 2015 09:35:01 -0700 |
parents | 908b68a98ba6 |
children | d6e523825abc |
files | libgui/src/dialog.cc scripts/gui/listdlg.m |
diffstat | 2 files changed, 6 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/dialog.cc Thu Apr 16 08:47:20 2015 -0400 +++ b/libgui/src/dialog.cc Thu Apr 16 09:35:01 2015 -0700 @@ -193,14 +193,10 @@ QListView *view = new QListView; view->setModel (model); - if (mode == "Single") + if (mode == "single") view->setSelectionMode (QAbstractItemView::SingleSelection); - else if (mode == "Multiple") + else if (mode == "multiple") view->setSelectionMode (QAbstractItemView::ExtendedSelection); -// else if () -// view->setSelectionMode (QAbstractItemView::ContiguousSelection); -// else if () -// view->setSelectionMode (QAbstractItemView::MultiSelection); else view->setSelectionMode (QAbstractItemView::NoSelection); @@ -249,7 +245,7 @@ } listLayout->addWidget (view); QPushButton *select_all = new QPushButton (tr ("Select All")); - select_all->setEnabled (mode == "Multiple"); + select_all->setEnabled (mode == "multiple"); listLayout->addWidget (select_all); QPushButton *buttonOk = new QPushButton (ok_string);
--- a/scripts/gui/listdlg.m Thu Apr 16 08:47:20 2015 -0400 +++ b/scripts/gui/listdlg.m Thu Apr 16 09:35:01 2015 -0700 @@ -97,7 +97,7 @@ if (strcmpi (varargin{i}, "ListString")) listcell = varargin{i+1}; elseif (strcmpi (varargin{i}, "SelectionMode")) - selmode = varargin{i+1}; + selmode = tolower (varargin{i+1}); elseif (strcmpi (varargin{i}, "ListSize")) listsize = varargin{i+1}; elseif (strcmpi (varargin{i}, "InitialValue")) @@ -126,8 +126,8 @@ endif ## make sure valid selection mode - if (! strcmp (selmode, "Multiple") && ! strcmp (selmode, "Single")) - error ("invalid SelectionMode"); + if (! strcmpi (selmode, "multiple") && ! strcmpi (selmode, "single")) + error ("listdlg: invalid SelectionMode"); endif if (__octave_link_enabled__ ())