File indexing completed on 2024-05-12 04:47:03
0001 #include "commandsmodel.h" 0002 #include <QDebug> 0003 #include <QSettings> 0004 0005 CommandsModel::CommandsModel(QObject *parent) 0006 { 0007 0008 } 0009 0010 void CommandsModel::componentComplete() 0011 { 0012 this->setList(); 0013 } 0014 0015 const FMH::MODEL_LIST &CommandsModel::items() const 0016 { 0017 return m_list; 0018 } 0019 0020 void CommandsModel::setList() 0021 { 0022 Q_EMIT this->preListChanged(); 0023 this->m_list.clear(); 0024 this->m_commands.clear(); 0025 0026 QSettings settings; 0027 settings.beginGroup("shortcuts"); 0028 0029 m_commands = settings.value("commands",QStringList()).toStringList(); 0030 0031 settings.endGroup(); 0032 0033 for(const auto &command : m_commands) 0034 { 0035 m_list << FMH::MODEL {{FMH::MODEL_KEY::VALUE, command}}; 0036 } 0037 0038 qDebug()<< "Getting commands" << m_commands; 0039 Q_EMIT this->postListChanged(); 0040 } 0041 0042 void CommandsModel::saveCommands() 0043 { 0044 QSettings settings; 0045 settings.beginGroup("shorcuts"); 0046 settings.setValue("commands", m_commands); 0047 settings.endGroup(); 0048 } 0049 0050 bool CommandsModel::insert(const QString &command) 0051 { 0052 if(m_commands.contains(command)) 0053 { 0054 return false; 0055 } 0056 0057 qDebug() << "try to insert command" << command; 0058 0059 Q_EMIT preItemAppended(); 0060 m_commands << command; 0061 m_list << FMH::MODEL {{FMH::MODEL_KEY::VALUE, command}}; 0062 Q_EMIT postItemAppended(); 0063 0064 this->saveCommands(); 0065 0066 return true; 0067 } 0068 0069 void CommandsModel::remove(const int &index) 0070 { 0071 0072 }