AboutDlg::AboutDlg(QWidget *parent) : QDialog(parent)
{
ui.setupUi(this);
- ui.quasselLogo->setPixmap(DesktopIcon("quassel", IconLoader::SizeHuge));
+ ui.quasselLogo->setPixmap(QIcon(":/icons/quassel-64.png").pixmap(64)); // don't let the icon theme affect our logo here
ui.versionLabel->setText(QString(tr("<b>Version:</b> %1<br><b>Protocol version:</b> %2<br><b>Built:</b> %3"))
.arg(Quassel::buildInfo().fancyVersionString)
Action *zoomInChatview = coll->add<Action>("ZoomInChatView", this, SLOT(zoomIn()));
zoomInChatview->setText(tr("Zoom In"));
- zoomInChatview->setIcon(SmallIcon("zoom-in"));
+ zoomInChatview->setIcon(QIcon::fromTheme("zoom-in"));
zoomInChatview->setShortcut(QKeySequence::ZoomIn);
Action *zoomOutChatview = coll->add<Action>("ZoomOutChatView", this, SLOT(zoomOut()));
- zoomOutChatview->setIcon(SmallIcon("zoom-out"));
+ zoomOutChatview->setIcon(QIcon::fromTheme("zoom-out"));
zoomOutChatview->setText(tr("Zoom Out"));
zoomOutChatview->setShortcut(QKeySequence::ZoomOut);
Action *zoomOriginalChatview = coll->add<Action>("ZoomOriginalChatView", this, SLOT(zoomOriginal()));
- zoomOriginalChatview->setIcon(SmallIcon("zoom-original"));
+ zoomOriginalChatview->setIcon(QIcon::fromTheme("zoom-original"));
zoomOriginalChatview->setText(tr("Actual Size"));
//zoomOriginalChatview->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_0)); // used for RTS switching
_sortFilter.setFilterKeyColumn(-1);
ui.setupUi(this);
- ui.advancedModeLabel->setPixmap(BarIcon("edit-rename"));
+ ui.advancedModeLabel->setPixmap(QIcon::fromTheme("edit-rename").pixmap(22));
ui.channelListView->setSelectionBehavior(QAbstractItemView::SelectRows);
ui.channelListView->setSelectionMode(QAbstractItemView::SingleSelection);
delete _simpleModeSpacer;
_simpleModeSpacer = 0;
}
- ui.advancedModeLabel->setPixmap(BarIcon("edit-clear-locationbar-rtl"));
+ ui.advancedModeLabel->setPixmap(QIcon::fromTheme("edit-clear-locationbar-rtl", QIcon::fromTheme("edit-clear")).pixmap(16));
}
else {
if (!_simpleModeSpacer) {
_simpleModeSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
ui.searchLayout->insertSpacerItem(0, _simpleModeSpacer);
}
- ui.advancedModeLabel->setPixmap(BarIcon("edit-rename"));
+ ui.advancedModeLabel->setPixmap(QIcon::fromTheme("edit-rename").pixmap(16));
}
ui.channelNameLineEdit->clear();
switch (click.type()) {
case Clickable::Url:
privateData()->activeClickable = click;
- menu->addAction(SmallIcon("edit-copy"), tr("Copy Link Address"),
+ menu->addAction(QIcon::fromTheme("edit-copy"), tr("Copy Link Address"),
&_actionProxy, SLOT(copyLinkToClipboard()))->setData(QVariant::fromValue<void *>(this));
break;
case Clickable::Channel:
}
menu->addSeparator();
- menu->addAction(SmallIcon("configure"), tr("Configure..."), this, SLOT(showSettingsPage()));
+ menu->addAction(QIcon::fromTheme("configure"), tr("Configure..."), this, SLOT(showSettingsPage()));
}
// If we have text selected, insert the Copy Selection as first item
if (isPosOverSelection(pos)) {
QAction *sep = menu.insertSeparator(menu.actions().first());
- QAction *act = new Action(SmallIcon("edit-copy"), tr("Copy Selection"), &menu, this,
+ QAction *act = new Action(QIcon::fromTheme("edit-copy"), tr("Copy Selection"), &menu, this,
SLOT(selectionToClipboard()), QKeySequence::Copy);
menu.insertAction(sep, act);
searchSelectionText = searchSelectionText.left(_webSearchSelectionTextMaxVisible).append(QString::fromUtf8("…"));
searchSelectionText = tr("Search '%1'").arg(searchSelectionText);
- menu.addAction(SmallIcon("edit-find"), searchSelectionText, this, SLOT(webSearchOnSelection()));
+ menu.addAction(QIcon::fromTheme("edit-find"), searchSelectionText, this, SLOT(webSearchOnSelection()));
}
if (QtUi::mainWindow()->menuBar()->isHidden())
: QWidget(parent)
{
ui.setupUi(this);
- ui.hideButton->setIcon(BarIcon("dialog-close"));
- ui.searchUpButton->setIcon(SmallIcon("go-up"));
- ui.searchDownButton->setIcon(SmallIcon("go-down"));
+ ui.hideButton->setIcon(QIcon::fromTheme("dialog-close"));
+ ui.searchUpButton->setIcon(QIcon::fromTheme("go-up"));
+ ui.searchDownButton->setIcon(QIcon::fromTheme("go-down"));
_searchDelayTimer.setSingleShot(true);
layout()->setContentsMargins(0, 0, 0, 0);
setModal(true);
setWindowTitle(tr("Core Configuration Wizard"));
- setPixmap(QWizard::LogoPixmap, DesktopIcon("quassel"));
+ setPixmap(QWizard::LogoPixmap, QIcon::fromTheme("quassel", QIcon(":/icons/quassel.png")).pixmap(48));
connect(connection, SIGNAL(coreSetupSuccess()), SLOT(coreSetupSuccess()));
connect(connection, SIGNAL(coreSetupFailed(QString)), SLOT(coreSetupFailed(QString)));
_settingsPage->setSelectedAccount(lastAccount);
setWindowTitle(tr("Connect to Core"));
- setWindowIcon(SmallIcon("network-disconnect"));
+ setWindowIcon(QIcon::fromTheme("network-disconnect"));
QVBoxLayout *layout = new QVBoxLayout(this);
layout->addWidget(_settingsPage);
{
if (state >= CoreConnection::Connected) {
if (coreConnection()->isEncrypted()) {
- ui.sslLabel->setPixmap(SmallIcon("security-high"));
+ ui.sslLabel->setPixmap(QIcon::fromTheme("security-high").pixmap(16));
ui.sslLabel->setToolTip(tr("The connection to your core is encrypted with SSL."));
}
else {
- ui.sslLabel->setPixmap(SmallIcon("security-low"));
+ ui.sslLabel->setPixmap(QIcon::fromTheme("security-low").pixmap(16));
ui.sslLabel->setToolTip(tr("The connection to your core is not encrypted."));
}
ui.sslLabel->show();
{
ui.setupUi(this);
// FIXME find proper icon (this one is used by the plasmoid as well)
- ui.enabled->setIcon(SmallIcon("mail-message-new"));
+ ui.enabled->setIcon(QIcon::fromTheme("mail-message-new"));
connect(ui.enabled, SIGNAL(toggled(bool)), SLOT(widgetChanged()));
}
ui.inputEdit->setMode(MultiLineEdit::MultiLine);
ui.inputEdit->setPasteProtectionEnabled(true);
- ui.boldButton->setIcon(SmallIcon("format-text-bold"));
- ui.italicButton->setIcon(SmallIcon("format-text-italic"));
- ui.underlineButton->setIcon(SmallIcon("format-text-underline"));
- ui.textcolorButton->setIcon(SmallIcon("format-text-color"));
- ui.highlightcolorButton->setIcon(SmallIcon("format-fill-color"));
+ ui.boldButton->setIcon(QIcon::fromTheme("format-text-bold"));
+ ui.italicButton->setIcon(QIcon::fromTheme("format-text-italic"));
+ ui.underlineButton->setIcon(QIcon::fromTheme("format-text-underline"));
+ ui.textcolorButton->setIcon(QIcon::fromTheme("format-text-color"));
+ ui.highlightcolorButton->setIcon(QIcon::fromTheme("format-fill-color"));
ui.encryptionIconLabel->hide();
_colorMenu = new QMenu();
ui.ownNick->addItems(nicks);
if (me && me->isAway())
- ui.ownNick->setItemData(nickIdx, SmallIcon("user-away"), Qt::DecorationRole);
+ ui.ownNick->setItemData(nickIdx, QIcon::fromTheme("user-away"), Qt::DecorationRole);
ui.ownNick->setCurrentIndex(nickIdx);
}
mergeFormatOnSelection(fmt);
}
ui.textcolorButton->setDefaultAction(action);
- ui.textcolorButton->setIcon(createColorToolButtonIcon(SmallIcon("format-text-color"), color));
+ ui.textcolorButton->setIcon(createColorToolButtonIcon(QIcon::fromTheme("format-text-color"), color));
}
mergeFormatOnSelection(fmt);
}
ui.highlightcolorButton->setDefaultAction(action);
- ui.highlightcolorButton->setIcon(createColorToolButtonIcon(SmallIcon("format-fill-color"), color));
+ ui.highlightcolorButton->setIcon(createColorToolButtonIcon(QIcon::fromTheme("format-fill-color"), color));
}
#else
QString message = QString("<b><%1></b> %2").arg(n.sender, n.message.toHtmlEscaped());
#endif
- KNotification *notification = KNotification::event(type, message, DesktopIcon("dialog-information"), QtUi::mainWindow(),
+ KNotification *notification = KNotification::event(type, message, QIcon::fromTheme("dialog-information").pixmap(48), QtUi::mainWindow(),
KNotification::RaiseWidgetOnActivation
|KNotification::CloseWhenWidgetActivated
|KNotification::CloseOnTimeout);
void MainWin::updateIcon()
{
-#ifdef Q_OS_MAC
- const int size = 128;
-#else
- const int size = 48;
-#endif
-
- QPixmap icon;
+ QIcon icon;
if (Client::isConnected())
- icon = DesktopIcon("quassel", size);
+ icon = QIcon::fromTheme("quassel", QIcon(":/icons/quassel-128.png"));
else
- icon = DesktopIcon("quassel-inactive", size);
+ icon = QIcon::fromTheme("quassel-inactive", QIcon(":/icons/quassel-128.png"));
setWindowIcon(icon);
qApp->setWindowIcon(icon);
}
{
ActionCollection *coll = QtUi::actionCollection("General", tr("General"));
// File
- coll->addAction("ConnectCore", new Action(SmallIcon("network-connect"), tr("&Connect to Core..."), coll,
+ coll->addAction("ConnectCore", new Action(QIcon::fromTheme("network-connect"), tr("&Connect to Core..."), coll,
this, SLOT(showCoreConnectionDlg())));
- coll->addAction("DisconnectCore", new Action(SmallIcon("network-disconnect"), tr("&Disconnect from Core"), coll,
+ coll->addAction("DisconnectCore", new Action(QIcon::fromTheme("network-disconnect"), tr("&Disconnect from Core"), coll,
Client::instance(), SLOT(disconnectFromCore())));
- coll->addAction("CoreInfo", new Action(SmallIcon("help-about"), tr("Core &Info..."), coll,
+ coll->addAction("CoreInfo", new Action(QIcon::fromTheme("help-about"), tr("Core &Info..."), coll,
this, SLOT(showCoreInfoDlg())));
- coll->addAction("ConfigureNetworks", new Action(SmallIcon("configure"), tr("Configure &Networks..."), coll,
+ coll->addAction("ConfigureNetworks", new Action(QIcon::fromTheme("configure"), tr("Configure &Networks..."), coll,
this, SLOT(on_actionConfigureNetworks_triggered())));
// FIXME: use QKeySequence::Quit once we depend on Qt 4.6
- coll->addAction("Quit", new Action(SmallIcon("application-exit"), tr("&Quit"), coll,
+ coll->addAction("Quit", new Action(QIcon::fromTheme("application-exit"), tr("&Quit"), coll,
this, SLOT(quit()), Qt::CTRL + Qt::Key_Q));
// View
lockAct->setCheckable(true);
connect(lockAct, SIGNAL(toggled(bool)), SLOT(on_actionLockLayout_toggled(bool)));
- coll->addAction("ToggleSearchBar", new Action(SmallIcon("edit-find"), tr("Show &Search Bar"), coll,
+ coll->addAction("ToggleSearchBar", new Action(QIcon::fromTheme("edit-find"), tr("Show &Search Bar"), coll,
0, 0, QKeySequence::Find))->setCheckable(true);
coll->addAction("ShowAwayLog", new Action(tr("Show Away Log"), coll,
this, SLOT(showAwayLog())));
- coll->addAction("ToggleMenuBar", new Action(SmallIcon("show-menu"), tr("Show &Menubar"), coll,
+ coll->addAction("ToggleMenuBar", new Action(QIcon::fromTheme("show-menu"), tr("Show &Menubar"), coll,
0, 0, QKeySequence(Qt::CTRL + Qt::Key_M)))->setCheckable(true);
coll->addAction("ToggleStatusBar", new Action(tr("Show Status &Bar"), coll,
#ifdef HAVE_KDE
QAction *fullScreenAct = KStandardAction::fullScreen(this, SLOT(onFullScreenToggled()), this, coll);
#else
- QAction *fullScreenAct = new Action(SmallIcon("view-fullscreen"), tr("&Full Screen Mode"), coll,
+ QAction *fullScreenAct = new Action(QIcon::fromTheme("view-fullscreen"), tr("&Full Screen Mode"), coll,
this, SLOT(onFullScreenToggled()), QKeySequence(Qt::Key_F11));
fullScreenAct->setCheckable(true);
#endif
coll->addAction("ToggleFullScreen", fullScreenAct);
// Settings
- QAction *configureShortcutsAct = new Action(SmallIcon("configure-shortcuts"), tr("Configure &Shortcuts..."), coll,
+ QAction *configureShortcutsAct = new Action(QIcon::fromTheme("configure-shortcuts"), tr("Configure &Shortcuts..."), coll,
this, SLOT(showShortcutsDlg()));
configureShortcutsAct->setMenuRole(QAction::NoRole);
coll->addAction("ConfigureShortcuts", configureShortcutsAct);
#ifdef Q_OS_MAC
- QAction *configureQuasselAct = new Action(SmallIcon("configure"), tr("&Configure Quassel..."), coll,
+ QAction *configureQuasselAct = new Action(QIcon::fromTheme("configure"), tr("&Configure Quassel..."), coll,
this, SLOT(showSettingsDlg()));
configureQuasselAct->setMenuRole(QAction::PreferencesRole);
#else
- QAction *configureQuasselAct = new Action(SmallIcon("configure"), tr("&Configure Quassel..."), coll,
+ QAction *configureQuasselAct = new Action(QIcon::fromTheme("configure"), tr("&Configure Quassel..."), coll,
this, SLOT(showSettingsDlg()), QKeySequence(Qt::Key_F7));
#endif
coll->addAction("ConfigureQuassel", configureQuasselAct);
// Help
- QAction *aboutQuasselAct = new Action(SmallIcon("quassel"), tr("&About Quassel"), coll,
+ QAction *aboutQuasselAct = new Action(QIcon(":/icons/quassel.png"), tr("&About Quassel"), coll,
this, SLOT(showAboutDlg()));
aboutQuasselAct->setMenuRole(QAction::AboutRole);
coll->addAction("AboutQuassel", aboutQuasselAct);
qApp, SLOT(aboutQt()));
aboutQtAct->setMenuRole(QAction::AboutQtRole);
coll->addAction("AboutQt", aboutQtAct);
- coll->addAction("DebugNetworkModel", new Action(SmallIcon("tools-report-bug"), tr("Debug &NetworkModel"), coll,
+ coll->addAction("DebugNetworkModel", new Action(QIcon::fromTheme("tools-report-bug"), tr("Debug &NetworkModel"), coll,
this, SLOT(on_actionDebugNetworkModel_triggered())));
- coll->addAction("DebugBufferViewOverlay", new Action(SmallIcon("tools-report-bug"), tr("Debug &BufferViewOverlay"), coll,
+ coll->addAction("DebugBufferViewOverlay", new Action(QIcon::fromTheme("tools-report-bug"), tr("Debug &BufferViewOverlay"), coll,
this, SLOT(on_actionDebugBufferViewOverlay_triggered())));
- coll->addAction("DebugMessageModel", new Action(SmallIcon("tools-report-bug"), tr("Debug &MessageModel"), coll,
+ coll->addAction("DebugMessageModel", new Action(QIcon::fromTheme("tools-report-bug"), tr("Debug &MessageModel"), coll,
this, SLOT(on_actionDebugMessageModel_triggered())));
- coll->addAction("DebugHotList", new Action(SmallIcon("tools-report-bug"), tr("Debug &HotList"), coll,
+ coll->addAction("DebugHotList", new Action(QIcon::fromTheme("tools-report-bug"), tr("Debug &HotList"), coll,
this, SLOT(on_actionDebugHotList_triggered())));
- coll->addAction("DebugLog", new Action(SmallIcon("tools-report-bug"), tr("Debug &Log"), coll,
+ coll->addAction("DebugLog", new Action(QIcon::fromTheme("tools-report-bug"), tr("Debug &Log"), coll,
this, SLOT(on_actionDebugLog_triggered())));
- coll->addAction("ReloadStyle", new Action(SmallIcon("view-refresh"), tr("Reload Stylesheet"), coll,
+ coll->addAction("ReloadStyle", new Action(QIcon::fromTheme("view-refresh"), tr("Reload Stylesheet"), coll,
QtUi::style(), SLOT(reload()), QKeySequence::Refresh));
coll->addAction("HideCurrentBuffer", new Action(tr("Hide Current Buffer"), coll,
QKeySequence(jumpModifier + Qt::Key_9)))->setProperty("Index", 9);
// Buffer navigation
- coll->addAction("NextBufferView", new Action(SmallIcon("go-next-view"), tr("Activate Next Chat List"), coll,
+ coll->addAction("NextBufferView", new Action(QIcon::fromTheme("go-next-view"), tr("Activate Next Chat List"), coll,
this, SLOT(nextBufferView()), QKeySequence(QKeySequence::Forward)));
- coll->addAction("PreviousBufferView", new Action(SmallIcon("go-previous-view"), tr("Activate Previous Chat List"), coll,
+ coll->addAction("PreviousBufferView", new Action(QIcon::fromTheme("go-previous-view"), tr("Activate Previous Chat List"), coll,
this, SLOT(previousBufferView()), QKeySequence::Back));
- coll->addAction("NextBuffer", new Action(SmallIcon("go-down"), tr("Go to Next Chat"), coll,
+ coll->addAction("NextBuffer", new Action(QIcon::fromTheme("go-down"), tr("Go to Next Chat"), coll,
this, SLOT(nextBuffer()), QKeySequence(Qt::ALT + Qt::Key_Down)));
- coll->addAction("PreviousBuffer", new Action(SmallIcon("go-up"), tr("Go to Previous Chat"), coll,
+ coll->addAction("PreviousBuffer", new Action(QIcon::fromTheme("go-up"), tr("Go to Previous Chat"), coll,
this, SLOT(previousBuffer()), QKeySequence(Qt::ALT + Qt::Key_Up)));
}
_helpMenu->addAction(KStandardAction::aboutKDE(_kHelpMenu, SLOT(aboutKDE()), this));
#endif
_helpMenu->addSeparator();
- _helpDebugMenu = _helpMenu->addMenu(SmallIcon("tools-report-bug"), tr("Debug"));
+ _helpDebugMenu = _helpMenu->addMenu(QIcon::fromTheme("tools-report-bug"), tr("Debug"));
_helpDebugMenu->addAction(coll->action("DebugNetworkModel"));
_helpDebugMenu->addAction(coll->action("DebugBufferViewOverlay"));
_helpDebugMenu->addAction(coll->action("DebugMessageModel"));
switch (net->connectionState()) {
case Network::Initialized:
- action->setIcon(SmallIcon("network-connect"));
+ action->setIcon(QIcon::fromTheme("network-connect"));
// if we have no currently selected buffer, jump to the first connecting statusbuffer
if (!bufferWidget()->currentBuffer().isValid()) {
QModelIndex idx = Client::networkModel()->networkIndex(net->networkId());
}
break;
case Network::Disconnected:
- action->setIcon(SmallIcon("network-disconnect"));
+ action->setIcon(QIcon::fromTheme("network-disconnect"));
break;
default:
- action->setIcon(SmallIcon("network-wired"));
+ action->setIcon(QIcon::fromTheme("network-wired"));
}
}
{
ui.setupUi(this);
_audioAvailable = !Phonon::BackendCapabilities::availableAudioOutputDevices().isEmpty();
- ui.enabled->setIcon(SmallIcon("media-playback-start"));
- ui.play->setIcon(SmallIcon("media-playback-start"));
- ui.open->setIcon(SmallIcon("document-open"));
+ ui.enabled->setIcon(QIcon::fromTheme("media-playback-start"));
+ ui.play->setIcon(QIcon::fromTheme("media-playback-start"));
+ ui.open->setIcon(QIcon::fromTheme("document-open"));
connect(ui.enabled, SIGNAL(toggled(bool)), SLOT(widgetChanged()));
connect(ui.filename, SIGNAL(textChanged(const QString &)), SLOT(widgetChanged()));
#include "qtuiapplication.h"
+#include <QIcon>
#include <QStringList>
#ifdef HAVE_KDE
#else
qInstallMessageHandler(Client::logMessage);
#endif
+
+ // Some platforms don't set a default icon theme; chances are we can find our bundled Oxygen theme though
+ if (QIcon::themeName().isEmpty())
+ QIcon::setThemeName("oxygen");
}
ui.setupUi(this);
setModal(true);
setAttribute(Qt::WA_DeleteOnClose, true);
- setWindowIcon(SmallIcon("configure"));
+ setWindowIcon(QIcon::fromTheme("configure"));
updateGeometry();
ui.pageTitle->setText(page->title());
setWindowTitle(tr("Configure %1").arg(page->title()));
- setWindowIcon(SmallIcon("configure"));
+ setWindowIcon(QIcon::fromTheme("configure"));
// make the scrollarea behave sanely
ui.settingsFrame->setWidgetResizable(true);
: SettingsPage(tr("IRC"), tr("Aliases"), parent)
{
ui.setupUi(this);
- ui.newAliasButton->setIcon(SmallIcon("list-add"));
- ui.deleteAliasButton->setIcon(SmallIcon("edit-delete"));
+ ui.newAliasButton->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteAliasButton->setIcon(QIcon::fromTheme("edit-delete"));
ui.aliasesView->setSelectionBehavior(QAbstractItemView::SelectRows);
ui.aliasesView->setSelectionMode(QAbstractItemView::SingleSelection);
if (!(Client::coreFeatures() & Quassel::HideInactiveNetworks))
ui.hideInactiveNetworks->hide();
- ui.renameBufferView->setIcon(SmallIcon("edit-rename"));
- ui.addBufferView->setIcon(SmallIcon("list-add"));
- ui.deleteBufferView->setIcon(SmallIcon("edit-delete"));
+ ui.renameBufferView->setIcon(QIcon::fromTheme("edit-rename"));
+ ui.addBufferView->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteBufferView->setIcon(QIcon::fromTheme("edit-delete"));
reset();
{
ui.setupUi(this);
- ui.activateBuffer->setIcon(SmallIcon("go-next"));
- ui.deactivateBuffer->setIcon(SmallIcon("go-previous"));
+ ui.activateBuffer->setIcon(QIcon::fromTheme("go-next"));
+ ui.deactivateBuffer->setIcon(QIcon::fromTheme("go-previous"));
// setup available buffers config (for the bufferview on the left)
_configAvailable = new BufferViewConfig(-667, this);
{
ui.setupUi(this);
initAutoWidgets();
- ui.addAccountButton->setIcon(SmallIcon("list-add"));
- ui.editAccountButton->setIcon(SmallIcon("document-edit"));
- ui.deleteAccountButton->setIcon(SmallIcon("edit-delete"));
+ ui.addAccountButton->setIcon(QIcon::fromTheme("list-add"));
+ ui.editAccountButton->setIcon(QIcon::fromTheme("document-edit"));
+ ui.deleteAccountButton->setIcon(QIcon::fromTheme("edit-delete"));
_model = new CoreAccountModel(Client::coreAccountModel(), this);
_filteredModel = new FilteredCoreAccountModel(_model, this);
_editSsl(false)
{
ui.setupUi(this);
- ui.renameIdentity->setIcon(BarIcon("edit-rename"));
- ui.addIdentity->setIcon(BarIcon("list-add-user"));
- ui.deleteIdentity->setIcon(BarIcon("list-remove-user"));
+ ui.renameIdentity->setIcon(QIcon::fromTheme("edit-rename"));
+ ui.addIdentity->setIcon(QIcon::fromTheme("list-add-user"));
+ ui.deleteIdentity->setIcon(QIcon::fromTheme("list-remove-user"));
coreConnectionStateChanged(Client::isConnected()); // need a core connection!
connect(Client::instance(), SIGNAL(coreConnectionStateChanged(bool)), this, SLOT(coreConnectionStateChanged(bool)));
: QDialog(parent)
{
ui.setupUi(this);
- ui.abort->setIcon(SmallIcon("dialog-cancel"));
+ ui.abort->setIcon(QIcon::fromTheme("dialog-cancel"));
numevents = toCreate.count() + toUpdate.count() + toRemove.count();
rcvevents = 0;
{
ui.setupUi(this);
- ui.addNick->setIcon(SmallIcon("list-add"));
- ui.deleteNick->setIcon(SmallIcon("edit-delete"));
- ui.renameNick->setIcon(SmallIcon("edit-rename"));
- ui.nickUp->setIcon(SmallIcon("go-up"));
- ui.nickDown->setIcon(SmallIcon("go-down"));
+ ui.addNick->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteNick->setIcon(QIcon::fromTheme("edit-delete"));
+ ui.renameNick->setIcon(QIcon::fromTheme("edit-rename"));
+ ui.nickUp->setIcon(QIcon::fromTheme("go-up"));
+ ui.nickDown->setIcon(QIcon::fromTheme("go-down"));
// We need to know whenever the state of input widgets changes...
connect(ui.realName, SIGNAL(textEdited(const QString &)), this, SIGNAL(widgetHasChanged()));
{
ui.setupUi(this);
_delegate = new IgnoreListDelegate(ui.ignoreListView);
- ui.newIgnoreRuleButton->setIcon(SmallIcon("list-add"));
- ui.deleteIgnoreRuleButton->setIcon(SmallIcon("edit-delete"));
- ui.editIgnoreRuleButton->setIcon(SmallIcon("configure"));
+ ui.newIgnoreRuleButton->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteIgnoreRuleButton->setIcon(QIcon::fromTheme("edit-delete"));
+ ui.editIgnoreRuleButton->setIcon(QIcon::fromTheme("configure"));
ui.ignoreListView->setSelectionBehavior(QAbstractItemView::SelectRows);
ui.ignoreListView->setSelectionMode(QAbstractItemView::SingleSelection);
_keyButton = new KeySequenceButton(this, this);
_keyButton->setFocusPolicy(Qt::StrongFocus);
- _keyButton->setIcon(SmallIcon("configure"));
+ _keyButton->setIcon(QIcon::fromTheme("configure"));
_keyButton->setToolTip(tr("Click on the button, then enter the shortcut like you would in the program.\nExample for Ctrl+a: hold the Ctrl key and press a."));
layout->addWidget(_keyButton);
layout->addWidget(_clearButton);
if (qApp->isLeftToRight())
- _clearButton->setIcon(SmallIcon("edit-clear-locationbar-rtl"));
+ _clearButton->setIcon(QIcon::fromTheme("edit-clear-locationbar-rtl", QIcon::fromTheme("edit-clear")));
else
- _clearButton->setIcon(SmallIcon("edit-clear-locationbar-ltr"));
+ _clearButton->setIcon(QIcon::fromTheme("edit-clear-locationbar-ltr", QIcon::fromTheme("edit-clear")));
setLayout(layout);
#endif
// set up icons
- ui.renameNetwork->setIcon(SmallIcon("edit-rename"));
- ui.addNetwork->setIcon(SmallIcon("list-add"));
- ui.deleteNetwork->setIcon(SmallIcon("edit-delete"));
- ui.addServer->setIcon(SmallIcon("list-add"));
- ui.deleteServer->setIcon(SmallIcon("edit-delete"));
- ui.editServer->setIcon(SmallIcon("configure"));
- ui.upServer->setIcon(SmallIcon("go-up"));
- ui.downServer->setIcon(SmallIcon("go-down"));
- ui.editIdentities->setIcon(SmallIcon("configure"));
+ ui.renameNetwork->setIcon(QIcon::fromTheme("edit-rename"));
+ ui.addNetwork->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteNetwork->setIcon(QIcon::fromTheme("edit-delete"));
+ ui.addServer->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteServer->setIcon(QIcon::fromTheme("edit-delete"));
+ ui.editServer->setIcon(QIcon::fromTheme("configure"));
+ ui.upServer->setIcon(QIcon::fromTheme("go-up"));
+ ui.downServer->setIcon(QIcon::fromTheme("go-down"));
+ ui.editIdentities->setIcon(QIcon::fromTheme("configure"));
_ignoreWidgetChanges = false;
- connectedIcon = SmallIcon("network-connect");
- connectingIcon = SmallIcon("network-wired"); // FIXME network-connecting
- disconnectedIcon = SmallIcon("network-disconnect");
+ connectedIcon = QIcon::fromTheme("network-connect");
+ connectingIcon = QIcon::fromTheme("network-wired"); // FIXME network-connecting
+ disconnectedIcon = QIcon::fromTheme("network-disconnect");
foreach(int mib, QTextCodec::availableMibs()) {
QByteArray codec = QTextCodec::codecForMib(mib)->name();
foreach(Network::Server server, info.serverList) {
QListWidgetItem *item = new QListWidgetItem(QString("%1:%2").arg(server.host).arg(server.port));
if (server.useSsl)
- item->setIcon(SmallIcon("document-encrypt"));
+ item->setIcon(QIcon::fromTheme("document-encrypt"));
ui.serverList->addItem(item);
}
//setItemState(id);
NetworkAddDlg::NetworkAddDlg(const QStringList &exist, QWidget *parent) : QDialog(parent), existing(exist)
{
ui.setupUi(this);
- ui.useSSL->setIcon(SmallIcon("document-encrypt"));
+ ui.useSSL->setIcon(QIcon::fromTheme("document-encrypt"));
// read preset networks
QStringList networks = PresetNetworks::names();
ServerEditDlg::ServerEditDlg(const Network::Server &server, QWidget *parent) : QDialog(parent)
{
ui.setupUi(this);
- ui.useSSL->setIcon(SmallIcon("document-encrypt"));
+ ui.useSSL->setIcon(QIcon::fromTheme("document-encrypt"));
ui.host->setText(server.host);
ui.port->setValue(server.port);
ui.password->setText(server.password);
#ifndef NETWORKSSETTINGSPAGE_H
#define NETWORKSSETTINGSPAGE_H
-#include <QPixmap>
+#include <QIcon>
#include "network.h"
#include "settingspage.h"
CertIdentity *_cid;
#endif
- QPixmap connectedIcon, connectingIcon, disconnectedIcon;
+ QIcon connectedIcon, connectingIcon, disconnectedIcon;
void reset();
bool testHasChanged();
{
ui.setupUi(this);
- ui.addServer->setIcon(SmallIcon("list-add"));
- ui.deleteServer->setIcon(SmallIcon("edit-delete"));
- ui.editServer->setIcon(SmallIcon("configure"));
- ui.upServer->setIcon(SmallIcon("go-up"));
- ui.downServer->setIcon(SmallIcon("go-down"));
+ ui.addServer->setIcon(QIcon::fromTheme("list-add"));
+ ui.deleteServer->setIcon(QIcon::fromTheme("edit-delete"));
+ ui.editServer->setIcon(QIcon::fromTheme("configure"));
+ ui.upServer->setIcon(QIcon::fromTheme("go-up"));
+ ui.downServer->setIcon(QIcon::fromTheme("go-down"));
connect(ui.networkNameEdit, SIGNAL(textEdited(const QString &)), this, SIGNAL(widgetHasChanged()));
connect(ui.channelList, SIGNAL(textChanged()), this, SIGNAL(widgetHasChanged()));
foreach(Network::Server server, _networkInfo.serverList) {
QListWidgetItem *item = new QListWidgetItem(QString("%1:%2").arg(server.host).arg(server.port));
if (server.useSsl)
- item->setIcon(SmallIcon("document-encrypt"));
+ item->setIcon(QIcon::fromTheme("document-encrypt"));
ui.serverList->addItem(item);
}
//TODO: try to get an instance of the tray icon to be able to show popups
m_snore = new Snore::SnoreCore();
m_snore->loadPlugins(Snore::SnorePlugin::BACKEND);
- m_icon = Snore::Icon(DesktopIcon("quassel").toImage());
+ m_icon = Snore::Icon(QIcon::fromTheme("quassel").toImage());
m_application = Snore::Application("Quassel", m_icon);
m_application.hints().setValue("WINDOWS_APP_ID","QuasselProject.QuasselIRC");
_mode(Invalid),
_state(Passive),
_shouldBeVisible(true),
- _passiveIcon(DesktopIcon("quassel-inactive")),
- _activeIcon(DesktopIcon("quassel")),
- _needsAttentionIcon(DesktopIcon("quassel-message")),
+ _passiveIcon(QIcon::fromTheme("quassel-inactive")),
+ _activeIcon(QIcon::fromTheme("quassel")),
+ _needsAttentionIcon(QIcon::fromTheme("quassel-message")),
_trayMenu(0),
_associatedWidget(parent)
{
SystrayNotificationBackend::ConfigWidget::ConfigWidget(QWidget *parent) : SettingsPage("Internal", "SystrayNotification", parent)
{
_showBubbleBox = new QCheckBox(tr("Show a message in a popup"));
- _showBubbleBox->setIcon(SmallIcon("dialog-information"));
+ _showBubbleBox->setIcon(QIcon::fromTheme("dialog-information"));
connect(_showBubbleBox, SIGNAL(toggled(bool)), this, SLOT(widgetChanged()));
QHBoxLayout *layout = new QHBoxLayout(this);
layout->addWidget(_showBubbleBox);
#else
layout->addWidget(enabledBox = new QCheckBox(tr("Mark taskbar entry, timeout:"), this));
#endif
- enabledBox->setIcon(SmallIcon("flag-blue"));
+ enabledBox->setIcon(QIcon::fromTheme("flag-blue"));
enabledBox->setEnabled(true);
timeoutBox = new QSpinBox(this);
: AbstractItemView(parent)
{
ui.setupUi(this);
- ui.topicEditButton->setIcon(SmallIcon("edit-rename"));
+ ui.topicEditButton->setIcon(QIcon::fromTheme("edit-rename"));
ui.topicLineEdit->setLineWrapEnabled(true);
ui.topicLineEdit->installEventFilter(this);
: QLineEdit(parent)
{
clearButton = new QToolButton(this);
- clearButton->setIcon(SmallIcon("edit-clear-locationbar-rtl"));
+ clearButton->setIcon(QIcon::fromTheme("edit-clear-locationbar-rtl", QIcon::fromTheme("edit-clear")));
#ifndef Q_WS_QWS
clearButton->setCursor(Qt::ArrowCursor);
#endif
ContextMenuActionProvider::ContextMenuActionProvider(QObject *parent) : NetworkModelController(parent)
{
- registerAction(NetworkConnect, SmallIcon("network-connect"), tr("Connect"));
- registerAction(NetworkDisconnect, SmallIcon("network-disconnect"), tr("Disconnect"));
+ registerAction(NetworkConnect, QIcon::fromTheme("network-connect"), tr("Connect"));
+ registerAction(NetworkDisconnect, QIcon::fromTheme("network-disconnect"), tr("Disconnect"));
- registerAction(BufferJoin, SmallIcon("irc-join-channel"), tr("Join"));
- registerAction(BufferPart, SmallIcon("irc-close-channel"), tr("Part"));
+ registerAction(BufferJoin, QIcon::fromTheme("irc-join-channel"), tr("Join"));
+ registerAction(BufferPart, QIcon::fromTheme("irc-close-channel"), tr("Part"));
registerAction(BufferRemove, tr("Delete Chat(s)..."));
registerAction(BufferSwitchTo, tr("Go to Chat"));
registerAction(HideApplyToAll, tr("Set as Default..."));
registerAction(HideUseDefaults, tr("Use Defaults..."));
- registerAction(JoinChannel, SmallIcon("irc-join-channel"), tr("Join Channel..."));
+ registerAction(JoinChannel, QIcon::fromTheme("irc-join-channel"), tr("Join Channel..."));
registerAction(NickQuery, tr("Start Query"));
registerAction(NickSwitchTo, tr("Show Query"));
registerAction(NickIgnoreToggleEnabled3, "Enable", true);
registerAction(NickIgnoreToggleEnabled4, "Enable", true);
- registerAction(NickOp, SmallIcon("irc-operator"), tr("Give Operator Status"));
- registerAction(NickDeop, SmallIcon("irc-remove-operator"), tr("Take Operator Status"));
- registerAction(NickHalfop, SmallIcon("irc-voice"), tr("Give Half-Operator Status"));
- registerAction(NickDehalfop, SmallIcon("irc-unvoice"), tr("Take Half-Operator Status"));
- registerAction(NickVoice, SmallIcon("irc-voice"), tr("Give Voice"));
- registerAction(NickDevoice, SmallIcon("irc-unvoice"), tr("Take Voice"));
- registerAction(NickKick, SmallIcon("im-kick-user"), tr("Kick From Channel"));
- registerAction(NickBan, SmallIcon("im-ban-user"), tr("Ban From Channel"));
- registerAction(NickKickBan, SmallIcon("im-ban-kick-user"), tr("Kick && Ban"));
+ registerAction(NickOp, QIcon::fromTheme("irc-operator"), tr("Give Operator Status"));
+ registerAction(NickDeop, QIcon::fromTheme("irc-remove-operator"), tr("Take Operator Status"));
+ registerAction(NickHalfop, QIcon::fromTheme("irc-voice"), tr("Give Half-Operator Status"));
+ registerAction(NickDehalfop, QIcon::fromTheme("irc-unvoice"), tr("Take Half-Operator Status"));
+ registerAction(NickVoice, QIcon::fromTheme("irc-voice"), tr("Give Voice"));
+ registerAction(NickDevoice, QIcon::fromTheme("irc-unvoice"), tr("Take Voice"));
+ registerAction(NickKick, QIcon::fromTheme("im-kick-user"), tr("Kick From Channel"));
+ registerAction(NickBan, QIcon::fromTheme("im-ban-user"), tr("Ban From Channel"));
+ registerAction(NickKickBan, QIcon::fromTheme("im-ban-kick-user"), tr("Kick && Ban"));
registerAction(HideBufferTemporarily, tr("Hide Chat(s) Temporarily"));
registerAction(HideBufferPermanently, tr("Hide Chat(s) Permanently"));
}
-Action *NetworkModelController::registerAction(ActionType type, const QPixmap &icon, const QString &text, bool checkable)
+Action *NetworkModelController::registerAction(ActionType type, const QIcon &icon, const QString &text, bool checkable)
{
Action *act;
if (icon.isNull())
NetworkModelController::JoinDlg::JoinDlg(const QModelIndex &index, QWidget *parent) : QDialog(parent)
{
- setWindowIcon(SmallIcon("irc-join-channel"));
+ setWindowIcon(QIcon::fromTheme("irc-join-channel"));
setWindowTitle(tr("Join Channel"));
QGridLayout *layout = new QGridLayout(this);
void setSlot(QObject *receiver, const char *method);
Action *registerAction(ActionType type, const QString &text, bool checkable = false);
- Action *registerAction(ActionType type, const QPixmap &icon, const QString &text, bool checkable = false);
+ Action *registerAction(NetworkModelController::ActionType type, const QIcon &icon, const QString &text, bool checkable = false);
bool checkRequirements(const QModelIndex &index, ItemActiveStates requiredActiveState = QFlags<ItemActiveState>(ActiveState | InactiveState));
QString nickName(const QModelIndex &index) const;
ToolBarActionProvider::ToolBarActionProvider(QObject *parent)
: NetworkModelController(parent)
{
- registerAction(NetworkConnectAll, DesktopIcon("network-connect"), tr("Connect"))->setToolTip(tr("Connect to IRC"));
- registerAction(NetworkDisconnectAll, DesktopIcon("network-disconnect"), tr("Disconnect"))->setToolTip(tr("Disconnect from IRC"));
-
- registerAction(BufferPart, DesktopIcon("irc-close-channel"), tr("Part"))->setToolTip(tr("Leave currently selected channel"));
- registerAction(JoinChannel, DesktopIcon("irc-join-channel"), tr("Join"))->setToolTip(tr("Join a channel"));
-
- registerAction(NickQuery, DesktopIcon("mail-message-new"), tr("Query"))->setToolTip(tr("Start a private conversation")); // fix icon
- registerAction(NickWhois, DesktopIcon("im-user"), tr("Whois"))->setToolTip(tr("Request user information")); // fix icon
-
- registerAction(NickOp, DesktopIcon("irc-operator"), tr("Op"))->setToolTip(tr("Give operator privileges to user"));
- registerAction(NickDeop, DesktopIcon("irc-remove-operator"), tr("Deop"))->setToolTip(tr("Take operator privileges from user"));
- registerAction(NickVoice, DesktopIcon("irc-voice"), tr("Voice"))->setToolTip(tr("Give voice to user"));
- registerAction(NickDevoice, DesktopIcon("irc-unvoice"), tr("Devoice"))->setToolTip(tr("Take voice from user"));
- registerAction(NickKick, DesktopIcon("im-kick-user"), tr("Kick"))->setToolTip(tr("Remove user from channel"));
- registerAction(NickBan, DesktopIcon("im-ban-user"), tr("Ban"))->setToolTip(tr("Ban user from channel"));
- registerAction(NickKickBan, DesktopIcon("im-ban-kick-user"), tr("Kick/Ban"))->setToolTip(tr("Remove and ban user from channel"));
+ registerAction(NetworkConnectAll, QIcon::fromTheme("network-connect"), tr("Connect"))->setToolTip(tr("Connect to IRC"));
+ registerAction(NetworkDisconnectAll, QIcon::fromTheme("network-disconnect"), tr("Disconnect"))->setToolTip(tr("Disconnect from IRC"));
+
+ registerAction(BufferPart, QIcon::fromTheme("irc-close-channel"), tr("Part"))->setToolTip(tr("Leave currently selected channel"));
+ registerAction(JoinChannel, QIcon::fromTheme("irc-join-channel"), tr("Join"))->setToolTip(tr("Join a channel"));
+
+ registerAction(NickQuery, QIcon::fromTheme("mail-message-new"), tr("Query"))->setToolTip(tr("Start a private conversation")); // fix icon
+ registerAction(NickWhois, QIcon::fromTheme("im-user"), tr("Whois"))->setToolTip(tr("Request user information")); // fix icon
+
+ registerAction(NickOp, QIcon::fromTheme("irc-operator"), tr("Op"))->setToolTip(tr("Give operator privileges to user"));
+ registerAction(NickDeop, QIcon::fromTheme("irc-remove-operator"), tr("Deop"))->setToolTip(tr("Take operator privileges from user"));
+ registerAction(NickVoice, QIcon::fromTheme("irc-voice"), tr("Voice"))->setToolTip(tr("Give voice to user"));
+ registerAction(NickDevoice, QIcon::fromTheme("irc-unvoice"), tr("Devoice"))->setToolTip(tr("Take voice from user"));
+ registerAction(NickKick, QIcon::fromTheme("im-kick-user"), tr("Kick"))->setToolTip(tr("Remove user from channel"));
+ registerAction(NickBan, QIcon::fromTheme("im-ban-user"), tr("Ban"))->setToolTip(tr("Ban user from channel"));
+ registerAction(NickKickBan, QIcon::fromTheme("im-ban-kick-user"), tr("Kick/Ban"))->setToolTip(tr("Remove and ban user from channel"));
_networksConnectMenu = new QMenu();
_networksConnectMenu->setSeparatorsCollapsible(false);
UiStyle::UiStyle(QObject *parent)
: QObject(parent),
- _channelJoinedIcon(SmallIcon("irc-channel-active")),
- _channelPartedIcon(SmallIcon("irc-channel-inactive")),
- _userOfflineIcon(SmallIcon("im-user-offline")),
- _userOnlineIcon(SmallIcon("im-user")),
- _userAwayIcon(SmallIcon("im-user-away")),
- _categoryOpIcon(SmallIcon("irc-operator")),
- _categoryVoiceIcon(SmallIcon("irc-voice")),
+ _channelJoinedIcon(QIcon::fromTheme("irc-channel-joined", QIcon(":/icons/irc-channel-joined.png"))),
+ _channelPartedIcon(QIcon::fromTheme("irc-channel-parted", QIcon(":/icons/irc-channel-parted.png"))),
+ _userOfflineIcon(QIcon::fromTheme("im-user-offline", QIcon::fromTheme("user-offline", QIcon(":/icons/im-user-offline.png")))),
+ _userOnlineIcon(QIcon::fromTheme("im-user", QIcon::fromTheme("user-available", QIcon(":/icons/im-user.png")))), // im-user-* are non-standard oxygen extensions
+ _userAwayIcon(QIcon::fromTheme("im-user-away", QIcon::fromTheme("user-away", QIcon(":/icons/im-user-away.png")))),
+ _categoryOpIcon(QIcon::fromTheme("irc-operator")),
+ _categoryVoiceIcon(QIcon::fromTheme("irc-voice")),
_opIconLimit(UserCategoryItem::categoryFromModes("o")),
_voiceIconLimit(UserCategoryItem::categoryFromModes("v"))
{
#include <QDataStream>
#include <QFontMetricsF>
#include <QHash>
+#include <QIcon>
#include <QTextCharFormat>
#include <QTextLayout>
#include <QPalette>
static QHash<QString, FormatType> _formatCodes;
static QString _timestampFormatString;
- QPixmap _channelJoinedIcon;
- QPixmap _channelPartedIcon;
- QPixmap _userOfflineIcon;
- QPixmap _userOnlineIcon;
- QPixmap _userAwayIcon;
- QPixmap _categoryOpIcon;
- QPixmap _categoryVoiceIcon;
+ QIcon _channelJoinedIcon;
+ QIcon _channelPartedIcon;
+ QIcon _userOfflineIcon;
+ QIcon _userOnlineIcon;
+ QIcon _userAwayIcon;
+ QIcon _categoryOpIcon;
+ QIcon _categoryVoiceIcon;
int _opIconLimit;
int _voiceIconLimit;
bool _showNickViewIcons;