Changeset View
Changeset View
Standalone View
Standalone View
src/dialogs/DiagnosticDialog.cpp
Show All 13 Lines | |||||
14 | * You should have received a copy of the GNU General Public License along with * | 14 | * You should have received a copy of the GNU General Public License along with * | ||
15 | * this program. If not, see <http://www.gnu.org/licenses/>. * | 15 | * this program. If not, see <http://www.gnu.org/licenses/>. * | ||
16 | ****************************************************************************************/ | 16 | ****************************************************************************************/ | ||
17 | 17 | | |||
18 | #include "DiagnosticDialog.h" | 18 | #include "DiagnosticDialog.h" | ||
19 | 19 | | |||
20 | #include "context/ContextView.h" | 20 | #include "context/ContextView.h" | ||
21 | #include "PluginManager.h" | 21 | #include "PluginManager.h" | ||
22 | #include "scripting/scriptmanager/ScriptManager.h" | | |||
23 | 22 | | |||
24 | #include <QApplication> | 23 | #include <QApplication> | ||
25 | #include <QClipboard> | 24 | #include <QClipboard> | ||
26 | #include <QDialogButtonBox> | 25 | #include <QDialogButtonBox> | ||
27 | #include <QPlainTextEdit> | 26 | #include <QPlainTextEdit> | ||
28 | #include <QPushButton> | 27 | #include <QPushButton> | ||
29 | #include <QVBoxLayout> | 28 | #include <QVBoxLayout> | ||
30 | 29 | | |||
Show All 30 Lines | 43 | { | |||
61 | connect( copyButton, &QPushButton::clicked, this, &DiagnosticDialog::slotCopyToClipboard ); | 60 | connect( copyButton, &QPushButton::clicked, this, &DiagnosticDialog::slotCopyToClipboard ); | ||
62 | 61 | | |||
63 | setAttribute( Qt::WA_DeleteOnClose ); | 62 | setAttribute( Qt::WA_DeleteOnClose ); | ||
64 | } | 63 | } | ||
65 | 64 | | |||
66 | const QString | 65 | const QString | ||
67 | DiagnosticDialog::generateReport( const KAboutData *aboutData ) | 66 | DiagnosticDialog::generateReport( const KAboutData *aboutData ) | ||
68 | { | 67 | { | ||
69 | // Get scripts -- we have to assemble 3 lists into one | | |||
70 | KPluginInfo::List aScripts; | | |||
71 | const auto aScriptManager = ScriptManager::instance(); | | |||
72 | aScripts.append( aScriptManager->scripts( QLatin1String( "Generic" ) ) ); | | |||
73 | aScripts.append( aScriptManager->scripts( QLatin1String( "Lyrics" ) ) ); | | |||
74 | aScripts.append( aScriptManager->scripts( QLatin1String( "Scriptable Service" ) ) ); | | |||
75 | | ||||
76 | // Format the data to be readable | | |||
77 | QString aScriptString; | | |||
78 | foreach( KPluginInfo aInfo, aScripts ) | | |||
79 | { | | |||
80 | if( aInfo.isPluginEnabled() ) | | |||
81 | aScriptString += " " + aInfo.name() + " (" + aInfo.version() + ")\n"; | | |||
82 | } | | |||
83 | | ||||
84 | | ||||
85 | // Get plugins -- we have to assemble a list again. | 68 | // Get plugins -- we have to assemble a list again. | ||
86 | QList<KPluginMetaData> aPlugins; | 69 | QList<KPluginMetaData> aPlugins; | ||
87 | const auto aPluginManager = Plugins::PluginManager::instance(); | 70 | const auto aPluginManager = Plugins::PluginManager::instance(); | ||
88 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Collection ) ); | 71 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Collection ) ); | ||
89 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Service ) ); | 72 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Service ) ); | ||
90 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Importer ) ); | 73 | aPlugins.append( aPluginManager->enabledPlugins( Plugins::PluginManager::Importer ) ); | ||
91 | 74 | | |||
92 | QString aPluginString; | 75 | QString aPluginString; | ||
Show All 29 Lines | 96 | return i18n( | |||
122 | KAboutData::applicationData().displayName(), aboutData->version(), // Amarok | 105 | KAboutData::applicationData().displayName(), aboutData->version(), // Amarok | ||
123 | KCoreAddons::versionString(), // KDE Frameworks | 106 | KCoreAddons::versionString(), // KDE Frameworks | ||
124 | qVersion(), // Qt | 107 | qVersion(), // Qt | ||
125 | Phonon::phononVersion(), // Phonon | 108 | Phonon::phononVersion(), // Phonon | ||
126 | aPhononBackend->name(), | 109 | aPhononBackend->name(), | ||
127 | aPhononBackend->property( "X-KDE-PhononBackendInfo-Version", QVariant::String ).toString(), // & Backend | 110 | aPhononBackend->property( "X-KDE-PhononBackendInfo-Version", QVariant::String ).toString(), // & Backend | ||
128 | pulse // PulseAudio | 111 | pulse // PulseAudio | ||
129 | ) + i18n( | 112 | ) + i18n( | ||
130 | "Enabled Scripts:\n%1\n" | 113 | "Enabled Plugins:\n%1\n" | ||
131 | "Enabled Plugins:\n%2\n" | 114 | "Enabled Applets:\n%2\n", | ||
132 | "Enabled Applets:\n%3\n", | 115 | aPluginString, appletString | ||
133 | aScriptString, aPluginString, appletString | | |||
134 | ); | 116 | ); | ||
135 | } | 117 | } | ||
136 | 118 | | |||
137 | void | 119 | void | ||
138 | DiagnosticDialog::slotCopyToClipboard() const | 120 | DiagnosticDialog::slotCopyToClipboard() const | ||
139 | { | 121 | { | ||
140 | QClipboard *clipboard = QApplication::clipboard(); | 122 | QClipboard *clipboard = QApplication::clipboard(); | ||
141 | clipboard->setText( m_textBox->toPlainText() ); | 123 | clipboard->setText( m_textBox->toPlainText() ); | ||
142 | } | 124 | } |