1 //////////////////////////////////////////////////////////////////////// 2 // 3 // Copyright (C) 2019-2021 The Octave Project Developers 4 // 5 // See the file COPYRIGHT.md in the top-level directory of this 6 // distribution or <https://octave.org/copyright/>. 7 // 8 // This file is part of Octave. 9 // 10 // Octave is free software: you can redistribute it and/or modify it 11 // under the terms of the GNU General Public License as published by 12 // the Free Software Foundation, either version 3 of the License, or 13 // (at your option) any later version. 14 // 15 // Octave is distributed in the hope that it will be useful, but 16 // WITHOUT ANY WARRANTY; without even the implied warranty of 17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 // GNU General Public License for more details. 19 // 20 // You should have received a copy of the GNU General Public License 21 // along with Octave; see the file COPYING. If not, see 22 // <https://www.gnu.org/licenses/>. 23 // 24 //////////////////////////////////////////////////////////////////////// 25 26 #if defined (HAVE_CONFIG_H) 27 # include "config.h" 28 #endif 29 30 #include <QSettings> 31 32 #include "gui-settings.h" 33 34 namespace octave 35 { 36 sc_value(const sc_pref & pref) const37 QString gui_settings::sc_value (const sc_pref& pref) const 38 { 39 QKeySequence key_seq = sc_def_value (pref); 40 41 // Get the value from the settings where the key sequences are stored 42 // as strings 43 return value (sc_group + pref.key, key_seq.toString ()).toString (); 44 } 45 sc_def_value(const sc_pref & pref) const46 QKeySequence gui_settings::sc_def_value (const sc_pref& pref) const 47 { 48 QKeySequence key_seq = QKeySequence (); 49 50 // Check, which of the elements for the default value in the sc_pref 51 // structure has a valid value and take this as default. If both 52 // elements are not valid, leave the key sequence empty 53 if (pref.def) 54 key_seq = QKeySequence (pref.def); 55 else if (pref.def_std != QKeySequence::UnknownKey) 56 key_seq = QKeySequence (pref.def_std); 57 58 return key_seq; 59 } 60 61 } 62