mirror of
				https://github.com/arcan1s/awesome-widgets.git
				synced 2025-10-31 05:13:40 +00:00 
			
		
		
		
	some improvemance of external scripts
This commit is contained in:
		| @ -80,6 +80,7 @@ private slots: | ||||
|     // configuration interface | ||||
|     void addNewPkgCommand(QTableWidgetItem *item); | ||||
|     void contextMenuPkgCommand(const QPoint pos); | ||||
|     void editCustomCommand(const int row, const int column); | ||||
|     void editFanItem(QListWidgetItem *item); | ||||
|     void editHddItem(QListWidgetItem *item); | ||||
|     void editHddSpeedItem(QListWidgetItem *item); | ||||
|  | ||||
| @ -20,6 +20,7 @@ | ||||
| #include <KConfigDialog> | ||||
| #include <KGlobal> | ||||
| #include <KStandardDirs> | ||||
| #include <QDesktopServices> | ||||
| #include <QDir> | ||||
| #include <QMenu> | ||||
| #include <QNetworkInterface> | ||||
| @ -469,6 +470,8 @@ void AwesomeWidget::createConfigurationInterface(KConfigDialog *parent) | ||||
|             this, SLOT(editMountItem(QListWidgetItem *))); | ||||
|     connect(uiAdvancedConfig.listWidget_tempDevice, SIGNAL(itemActivated(QListWidgetItem *)), | ||||
|             this, SLOT(editTempItem(QListWidgetItem *))); | ||||
|     connect(uiDEConfig.tableWidget_customCommand, SIGNAL(cellDoubleClicked(int, int)), | ||||
|             this, SLOT(editCustomCommand(int, int))); | ||||
|     connect(uiDEConfig.tableWidget_pkgCommand, SIGNAL(itemChanged(QTableWidgetItem *)), | ||||
|             this, SLOT(addNewPkgCommand(QTableWidgetItem *))); | ||||
|     connect(uiDEConfig.tableWidget_pkgCommand, SIGNAL(customContextMenuRequested(QPoint)), | ||||
| @ -570,7 +573,7 @@ void AwesomeWidget::configAccepted() | ||||
|     deSettings[QString("ACPIPATH")] = uiDEConfig.lineEdit_acpi->text(); | ||||
|     QStringList dirs = KGlobal::dirs()->findDirs("data", "plasma_engine_extsysmon/scripts"); | ||||
|     for (int i=0; i<uiDEConfig.tableWidget_customCommand->rowCount(); i++) { | ||||
|         ExtScript *script = new ExtScript(uiDEConfig.tableWidget_customCommand->item(i, 0)->text(), dirs); | ||||
|         ExtScript *script = new ExtScript(uiDEConfig.tableWidget_customCommand->item(i, 0)->text(), dirs, debug); | ||||
|         if (uiDEConfig.tableWidget_customCommand->item(i, 0)->checkState() == Qt::Checked) | ||||
|             script->setActive(true); | ||||
|         else | ||||
| @ -758,6 +761,23 @@ void AwesomeWidget::contextMenuPkgCommand(const QPoint pos) | ||||
| } | ||||
|  | ||||
|  | ||||
| void AwesomeWidget::editCustomCommand(const int row, const int column) | ||||
| { | ||||
|     Q_UNUSED(column); | ||||
|     if (debug) qDebug() << PDEBUG; | ||||
|  | ||||
|     QString name = uiDEConfig.tableWidget_customCommand->itemAt(row, 0)->text(); | ||||
|     QString localDir = KStandardDirs::locateLocal("data", "plasma_engine_extsysmon/scripts"); | ||||
|     QStringList dirs = KGlobal::dirs()->findDirs("data", "plasma_engine_extsysmon/scripts"); | ||||
|     for (int i=0; i<dirs.count(); i++) { | ||||
|         if (!QDir(dirs[i]).exists(name)) continue; | ||||
|         if (dirs[i] == localDir) break; | ||||
|         QFile::copy(QDir(dirs[i]).absoluteFilePath(name), QDir(localDir).absoluteFilePath(name)); | ||||
|     } | ||||
|     QDesktopServices::openUrl(QUrl(QDir(localDir).absoluteFilePath(name))); | ||||
| } | ||||
|  | ||||
|  | ||||
| void AwesomeWidget::editFanItem(QListWidgetItem *item) | ||||
| { | ||||
|     if (debug) qDebug() << PDEBUG; | ||||
|  | ||||
| @ -7,7 +7,7 @@ | ||||
|     <x>0</x> | ||||
|     <y>0</y> | ||||
|     <width>700</width> | ||||
|     <height>590</height> | ||||
|     <height>588</height> | ||||
|    </rect> | ||||
|   </property> | ||||
|   <property name="sizePolicy"> | ||||
| @ -43,7 +43,7 @@ | ||||
|         <x>0</x> | ||||
|         <y>0</y> | ||||
|         <width>684</width> | ||||
|         <height>574</height> | ||||
|         <height>572</height> | ||||
|        </rect> | ||||
|       </property> | ||||
|       <layout class="QGridLayout" name="gridLayout"> | ||||
| @ -459,12 +459,12 @@ del - remove item</string> | ||||
|          </column> | ||||
|          <column> | ||||
|           <property name="text"> | ||||
|            <string>Active</string> | ||||
|            <string>Interval</string> | ||||
|           </property> | ||||
|          </column> | ||||
|          <column> | ||||
|           <property name="text"> | ||||
|            <string>Interval</string> | ||||
|            <string>Output</string> | ||||
|           </property> | ||||
|          </column> | ||||
|          <column> | ||||
|  | ||||
| @ -173,7 +173,7 @@ void ExtScript::readConfiguration() | ||||
|     if (debug) qDebug() << PDEBUG; | ||||
|  | ||||
|     QMap<QString, QString> settings; | ||||
|     for (int i=0; i<dirs.count(); i++) { | ||||
|     for (int i=dirs.count()-1; i>=0; i--) { | ||||
|         if (!QDir(dirs[i]).entryList(QDir::Files).contains(name + QString(".conf"))) continue; | ||||
|         QString fileName = dirs[i] + QDir::separator() + name + QString(".conf"); | ||||
|         QMap<QString, QString> newSettings = getConfigurationFromFile(fileName); | ||||
| @ -252,6 +252,8 @@ void ExtScript::writeConfiguration() | ||||
|  | ||||
| void ExtScript::fromExternalConfiguration(const QMap<QString, QString> settings) | ||||
| { | ||||
|     if (debug) qDebug() << PDEBUG; | ||||
|  | ||||
|     if (settings.contains(QString("ACTIVE"))) | ||||
|         setActive(settings[QString("ACTIVE")] == QString("true")); | ||||
|     if (settings.contains(QString("INTERVAL"))) | ||||
|  | ||||
		Reference in New Issue
	
	Block a user