# HG changeset patch # User Rik # Date 1429202101 25200 # Node ID 8bfadb26afcd86459adae6f4d3065bd6fcc22abd # Parent 908b68a98ba6a9484438d956f9e98f6c48892335 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. diff --git a/libgui/src/dialog.cc b/libgui/src/dialog.cc --- a/libgui/src/dialog.cc +++ b/libgui/src/dialog.cc @@ -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); diff --git a/scripts/gui/listdlg.m b/scripts/gui/listdlg.m --- a/scripts/gui/listdlg.m +++ b/scripts/gui/listdlg.m @@ -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__ ())