diff options
| author | 2010-06-07 01:12:27 +0000 | |
|---|---|---|
| committer | 2010-06-07 01:12:27 +0000 | |
| commit | 7ec4dda4219f796cade73f00fea14fc4b2bdd7a5 (patch) | |
| tree | ca824edd40116284cb126d9f62608445a20529ae | |
| parent | Correctly enable the 'Connect Now' button at startup (diff) | |
| download | KVIrc-7ec4dda4219f796cade73f00fea14fc4b2bdd7a5.tar.gz KVIrc-7ec4dda4219f796cade73f00fea14fc4b2bdd7a5.tar.bz2 KVIrc-7ec4dda4219f796cade73f00fea14fc4b2bdd7a5.zip | |
Fix some icon issues
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@4424 17fca916-40b9-46aa-a4ea-0a15b648b75c
| -rw-r--r-- | src/kvirc/kernel/kvi_action.cpp | 36 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_action.h | 40 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_coreactions.cpp | 73 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_coreactions.h | 12 | ||||
| -rw-r--r-- | src/kvirc/kernel/kvi_iconmanager.cpp | 27 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_action.cpp | 22 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_action.h | 22 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_useraction.cpp | 152 | ||||
| -rw-r--r-- | src/kvirc/kvs/kvi_kvs_useraction.h | 69 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_frame.cpp | 35 | ||||
| -rw-r--r-- | src/kvirc/ui/kvi_imagedialog.cpp | 6 | ||||
| -rw-r--r-- | src/modules/actioneditor/actioneditor.cpp | 116 | ||||
| -rw-r--r-- | src/modules/actioneditor/actioneditor.h | 2 | ||||
| -rw-r--r-- | src/modules/toolbareditor/toolbareditor.cpp | 7 | ||||
| -rw-r--r-- | src/modules/url/libkviurl.cpp | 19 |
15 files changed, 400 insertions, 238 deletions
diff --git a/src/kvirc/kernel/kvi_action.cpp b/src/kvirc/kernel/kvi_action.cpp index e5053a661..a75b573c4 100644 --- a/src/kvirc/kernel/kvi_action.cpp +++ b/src/kvirc/kernel/kvi_action.cpp @@ -36,6 +36,33 @@ #include "kvi_query.h" #include "kvi_tal_popupmenu.h" +KviAction::KviAction( + QObject * pParent, + const QString &szName, + const QString &szVisibleName, + const QString &szDescription, + KviActionCategory * pCategory, + const QString &szBigIconId, + const QString &szSmallIconId, + unsigned int uFlags, + const QString &szKeySequence + ) + : QObject(pParent), + m_szName(szName), + m_szVisibleName(szVisibleName), + m_szDescription(szDescription), + m_pCategory(pCategory), + m_szBigIconId(szBigIconId), + m_szSmallIconId(szSmallIconId), + m_pWidgetList(NULL), + m_uInternalFlags(KVI_ACTION_FLAG_ENABLED), + m_uFlags(uFlags), + m_szKeySequence(szKeySequence), + m_pAccel(NULL) +{ +} + + KviAction::~KviAction() { if(m_pWidgetList) @@ -119,13 +146,16 @@ int KviAction::validateFlags(int iFlagsToValidate) QPixmap * KviAction::smallIcon() { - if(m_iSmallIconId != 0)return g_pIconManager->getSmallIcon(m_iSmallIconId); - return 0; + if(m_szSmallIconId.isEmpty()) + return NULL; + return g_pIconManager->getImage(m_szSmallIconId); } QPixmap * KviAction::bigIcon() { - return g_pIconManager->getBigIcon(m_szBigIcon); + if(m_szBigIconId.isEmpty()) + return NULL; + return g_pIconManager->getImage(m_szBigIconId); } void KviAction::setup() diff --git a/src/kvirc/kernel/kvi_action.h b/src/kvirc/kernel/kvi_action.h index 8268368b6..f32d23956 100644 --- a/src/kvirc/kernel/kvi_action.h +++ b/src/kvirc/kernel/kvi_action.h @@ -73,8 +73,8 @@ protected: QString m_szVisibleName; QString m_szDescription; KviActionCategory * m_pCategory; // may be 0, not owned! - QString m_szBigIcon; - int m_iSmallIconId; + QString m_szBigIconId; + QString m_szSmallIconId; KviPointerList<QWidget> * m_pWidgetList; unsigned short int m_uInternalFlags; unsigned int m_uFlags; @@ -94,26 +94,15 @@ public: }; public: KviAction(QObject * pParent, // can be 0, but using a QObject will help in deleting this action :) - const QString &szName, // internal name of this action, in form [module.]name - const QString &szVisibleName, // permanent visible name, visible at least in the action drawer - const QString &szDescription, // what this action does ? - KviActionCategory * pCategory = 0, // one of KviActionManager::category*() or 0 (default category) - const QString &szBigIcon = QString(), - int iSmallIconId = 0, - unsigned int uFlags = 0, - const QString &szKeySequence = QString()) - : QObject(pParent), - m_szName(szName), - m_szVisibleName(szVisibleName), - m_szDescription(szDescription), - m_pCategory(pCategory), - m_szBigIcon(szBigIcon), - m_iSmallIconId(iSmallIconId), - m_pWidgetList(0), - m_uInternalFlags(KVI_ACTION_FLAG_ENABLED), - m_uFlags(uFlags), - m_szKeySequence(szKeySequence), - m_pAccel(0) {} + const QString &szName, // internal name of this action, in form [module.]name + const QString &szVisibleName, // permanent visible name, visible at least in the action drawer + const QString &szDescription, // what this action does ? + KviActionCategory * pCategory = NULL, // one of KviActionManager::category*() or 0 (default category) + const QString &szBigIconId = QString(), + const QString &szSmallIconId = QString(), + unsigned int uFlags = 0, + const QString &szKeySequence = QString() + ); virtual ~KviAction(); public: static int validateFlags(int iFlagsToValidate); @@ -121,14 +110,15 @@ public: virtual const QString & visibleName(); virtual const QString & description(); const QString & keySequence() const { return m_szKeySequence; }; - const QString & bigIconString() const { return m_szBigIcon; }; + const QString & bigIconId() const { return m_szBigIconId; }; + const QString & smallIconId() const { return m_szSmallIconId; }; KviActionCategory * category() const { return m_pCategory; }; bool isEnabled() const { return (m_uInternalFlags & KVI_ACTION_FLAG_ENABLED); }; unsigned int flags(){ return m_uFlags; }; virtual bool isKviUserActionNeverOverrideThis(); virtual void setEnabled(bool bEnabled); - virtual QPixmap * smallIcon(); - virtual QPixmap * bigIcon(); + virtual QPixmap * smallIcon(); // FIXME: maybe doesn't need to be virtual anymore + virtual QPixmap * bigIcon(); // FIXME: maybe doesn't need to be virtual anymore virtual bool addToPopupMenu(KviTalPopupMenu *pMenu); virtual QWidget * addToCustomToolBar(KviCustomToolBar *pParentToolBar); void suicide() { delete this; }; diff --git a/src/kvirc/kernel/kvi_coreactions.cpp b/src/kvirc/kernel/kvi_coreactions.cpp index 3bc193fb7..ed484952a 100644 --- a/src/kvirc/kernel/kvi_coreactions.cpp +++ b/src/kvirc/kernel/kvi_coreactions.cpp @@ -71,7 +71,7 @@ void register_core_actions(KviActionManager * m) QString(__description), \ __category, \ QString(__icon), \ - __smallicon, \ + QString("%1").arg(__smallicon), \ __flags, \ __accel); \ m->registerAction(a) @@ -83,7 +83,7 @@ void register_core_actions(KviActionManager * m) QString(__description), \ __category, \ QString(__icon), \ - __smallicon, \ + QString("%1").arg(__smallicon), \ __flags, \ __accel); \ QObject::connect(a,SIGNAL(activated()),__object,__slot); \ @@ -668,24 +668,28 @@ QWidget * KviConnectAction::addToCustomToolBar(KviCustomToolBar *t) } -KviSubmenuAction::KviSubmenuAction(QObject * pParent, +KviSubmenuAction::KviSubmenuAction( + QObject * pParent, const QString &szName, const QString &szScriptCode, const QString &szVisibleName, const QString &szDescription, KviActionCategory * pCategory, - const QString &szBigIcon, - int iSmallIconId, - unsigned int uFlags) -: KviKvsAction(pParent, + const QString &szBigIconId, + const QString &szSmallIconId, + unsigned int uFlags + ) +: KviKvsAction( + pParent, szName, szScriptCode, szVisibleName, szDescription, pCategory, - szBigIcon, - iSmallIconId, - uFlags) + szBigIconId, + szSmallIconId, + uFlags + ) { m_pPopup = 0; } @@ -750,7 +754,7 @@ KviJoinChannelAction::KviJoinChannelAction(QObject * pParent) __tr2qs("Shows a popup menu that allows quickly selecting a channel to join"), KviActionManager::categoryIrc(), "kvi_bigicon_channelspopup.png", - KVI_SMALLICON_CHANNEL, + QString("%1").arg(KVI_SMALLICON_CHANNEL), NeedsConnection | NeedsContext) { } @@ -794,14 +798,15 @@ void KviJoinChannelAction::popupActivated(int id) KviChangeNickAction::KviChangeNickAction(QObject * pParent) -: KviSubmenuAction(pParent, +: KviSubmenuAction( + pParent, QString(KVI_COREACTION_NICKNAMEMENU), QString("dialog.textinput(\"Change Nickname\",\"Please enter the new nickname\",\"Cancel\",\"default=OK\"){ if($0 == 1)nick $1; }"), __tr2qs("Change Nickname"), __tr2qs("Shows a popup menu that allows quickly changing the nickname"), KviActionManager::categoryIrc(), "kvi_bigicon_nickpopup.png", - KVI_SMALLICON_NICK, + QString("%1").arg(KVI_SMALLICON_NICK), NeedsConnection | NeedsContext) { } @@ -845,14 +850,15 @@ void KviChangeNickAction::popupActivated(int id) KviConnectToServerAction::KviConnectToServerAction(QObject * pParent) -: KviSubmenuAction(pParent, +: KviSubmenuAction( + pParent, QString(KVI_COREACTION_SERVERMENU), QString("options.edit KviServerOptionsWidget"), __tr2qs("Connect To"), __tr2qs("Shows a popup menu that allows quickly connecting to a server"), KviActionManager::categoryIrc(), "kvi_bigicon_server.png", - KVI_SMALLICON_SERVER, + QString("%1").arg(KVI_SMALLICON_SERVER), NeedsContext) { } @@ -893,14 +899,15 @@ void KviConnectToServerAction::popupActivated(int id) KviChangeUserModeAction::KviChangeUserModeAction(QObject * pParent) -: KviSubmenuAction(pParent, +: KviSubmenuAction( + pParent, QString(KVI_COREACTION_USERMODEMENU), QString(""), __tr2qs("User Mode"), __tr2qs("Shows a popup menu that allows quickly changing user modes"), KviActionManager::categoryIrc(), "kvi_bigicon_usermode.png", - KVI_SMALLICON_MODE, + QString("%1").arg(KVI_SMALLICON_MODE), NeedsContext | NeedsConnection) { } @@ -961,16 +968,18 @@ void KviChangeUserModeAction::popupActivated(int id) KviGoAwayAction::KviGoAwayAction(QObject * pParent) -: KviKvsAction(pParent, - QString(KVI_COREACTION_AWAYBACK), - QString("if($away())back; else away;"), - __tr2qs("Away/Back"), - __tr2qs("Allows entering and leaving away state"), - KviActionManager::categoryIrc(), - "kvi_bigicon_nokeyboard.png", - KVI_SMALLICON_NOTAWAY, - KviKvsAction::NeedsContext | KviKvsAction::NeedsConnection, - KVI_SHORTCUTS_AWAY) +: KviKvsAction( + pParent, + QString(KVI_COREACTION_AWAYBACK), + QString("if($away())back; else away;"), + __tr2qs("Away/Back"), + __tr2qs("Allows entering and leaving away state"), + KviActionManager::categoryIrc(), + "kvi_bigicon_nokeyboard.png", + QString("%1").arg(KVI_SMALLICON_NOTAWAY), + KviKvsAction::NeedsContext | KviKvsAction::NeedsConnection, + KVI_SHORTCUTS_AWAY + ) { } @@ -1093,14 +1102,15 @@ QWidget * KviGoAwayAction::addToCustomToolBar(KviCustomToolBar *t) KviIrcToolsAction::KviIrcToolsAction(QObject * pParent) -: KviSubmenuAction(pParent, +: KviSubmenuAction( + pParent, QString(KVI_COREACTION_IRCTOOLS), QString(""), __tr2qs("Irc Tools"), __tr2qs("Shows a popup menu with some IRC Tools"), KviActionManager::categoryIrc(), "kvi_bigicon_tools.png", - KVI_SMALLICON_NONE, + QString("%1").arg(KVI_SMALLICON_NONE), NeedsConnection | NeedsContext) { } @@ -1125,14 +1135,15 @@ void KviIrcToolsAction::popupActivated(int) KviIrcOperationsAction::KviIrcOperationsAction(QObject * pParent) -: KviSubmenuAction(pParent, +: KviSubmenuAction( + pParent, QString(KVI_COREACTION_IRCACTIONS), QString(""), __tr2qs("Irc Actions"), __tr2qs("Shows a popup menu with some IRC Actions"), KviActionManager::categoryIrc(), "kvi_bigicon_actions.png", - KVI_SMALLICON_NONE, + QString("%1").arg(KVI_SMALLICON_NONE), NeedsConnection | NeedsContext) { } diff --git a/src/kvirc/kernel/kvi_coreactions.h b/src/kvirc/kernel/kvi_coreactions.h index 5a65eb9a1..272970e7d 100644 --- a/src/kvirc/kernel/kvi_coreactions.h +++ b/src/kvirc/kernel/kvi_coreactions.h @@ -65,7 +65,17 @@ class KviSubmenuAction : public KviKvsAction { Q_OBJECT public: - KviSubmenuAction(QObject * pParent, const QString & szName, const QString & szScriptCode, const QString & szVisibleName, const QString & szDescription, KviActionCategory * pCategory = 0, const QString & szBigIcon = QString(), int iSmallIconId = 0, unsigned int uFlags = 0); + KviSubmenuAction( + QObject * pParent, + const QString & szName, + const QString & szScriptCode, + const QString & szVisibleName, + const QString & szDescription, + KviActionCategory * pCategory = NULL, + const QString & szBigIconId = QString(), + const QString & szSmallIcoNId = QString(), + unsigned int uFlags = 0 + ); ~KviSubmenuAction(); protected: KviTalPopupMenu * m_pPopup; diff --git a/src/kvirc/kernel/kvi_iconmanager.cpp b/src/kvirc/kernel/kvi_iconmanager.cpp index 10623e593..c2f8d9c28 100644 --- a/src/kvirc/kernel/kvi_iconmanager.cpp +++ b/src/kvirc/kernel/kvi_iconmanager.cpp @@ -716,7 +716,8 @@ void KviIconManager::addToCache(const QString &szName,KviCachedPixmap * p) QPixmap * KviIconManager::getImage(const QString &id,bool bCanBeNumber,QString* pRetPath) { if(id.isEmpty()) - return 0; + return NULL; + if(bCanBeNumber) { bool bOk; @@ -724,13 +725,31 @@ QPixmap * KviIconManager::getImage(const QString &id,bool bCanBeNumber,QString* if(bOk) { // was a number : this is not a filename - if(idx >= 0)return getSmallIcon(idx % KVI_NUM_SMALL_ICONS); + if(idx >= 0) + return getSmallIcon(idx % KVI_NUM_SMALL_ICONS); + } else { + if(id.startsWith("$icon")) + { + QString szTmp = id.trimmed(); + szTmp.replace("$icon(",""); + szTmp.replace(")",""); + szTmp = szTmp.trimmed(); + szTmp.replace("\"",""); + idx = getSmallIconIdFromName(szTmp.trimmed()); + if(idx >= 0) + return getSmallIcon(idx % KVI_NUM_SMALL_ICONS); + + } } } KviCachedPixmap * p = getPixmapWithCache(id); - if(!p)return 0; - if(pRetPath)*pRetPath = p->path(); + if(!p) + return NULL; + + if(pRetPath) + *pRetPath = p->path(); + return p->pixmap(); } diff --git a/src/kvirc/kvs/kvi_kvs_action.cpp b/src/kvirc/kvs/kvi_kvs_action.cpp index 2849b915a..ce7be3690 100644 --- a/src/kvirc/kvs/kvi_kvs_action.cpp +++ b/src/kvirc/kvs/kvi_kvs_action.cpp @@ -28,17 +28,29 @@ #include "kvi_kvs_script.h" #include "kvi_window.h" -KviKvsAction::KviKvsAction(QObject * pParent, +KviKvsAction::KviKvsAction( + QObject * pParent, const QString &szName, const QString &szScriptCode, const QString &szVisibleName, const QString &szDescription, KviActionCategory * pCategory, - const QString &szBigIcon, - int iSmallIconId, + const QString &szBigIconId, + const QString &szSmallIconId, unsigned int uFlags, - const QString &szKeySequence) - : KviAction(pParent,szName,szVisibleName,szDescription,pCategory,szBigIcon,iSmallIconId,uFlags,szKeySequence) + const QString &szKeySequence + ) + : KviAction( + pParent, + szName, + szVisibleName, + szDescription, + pCategory, + szBigIconId, + szSmallIconId, + uFlags, + szKeySequence + ) { m_szScript = QString(szScriptCode); } diff --git a/src/kvirc/kvs/kvi_kvs_action.h b/src/kvirc/kvs/kvi_kvs_action.h index e75ced9bd..dca5512b8 100644 --- a/src/kvirc/kvs/kvi_kvs_action.h +++ b/src/kvirc/kvs/kvi_kvs_action.h @@ -35,16 +35,18 @@ class KVIRC_API KviKvsAction : public KviAction protected: QString m_szScript; public: - KviKvsAction(QObject * pParent, - const QString &szName, - const QString &szScriptCode, - const QString &szVisibleName, - const QString &szDescription, - KviActionCategory * pCategory = 0, - const QString &szBigIcon = QString(), - int iSmallIconId = 0, - unsigned int uFlags = 0, - const QString &szKeySequence = QString()); + KviKvsAction( + QObject * pParent, + const QString &szName, + const QString &szScriptCode, + const QString &szVisibleName, + const QString &szDescription, + KviActionCategory * pCategory = NULL, + const QString &szBigIconId = QString(), + const QString &szSmallIconId = QString(), + unsigned int uFlags = 0, + const QString &szKeySequence = QString() + ); ~KviKvsAction(); public: const QString & scriptCode(); diff --git a/src/kvirc/kvs/kvi_kvs_useraction.cpp b/src/kvirc/kvs/kvi_kvs_useraction.cpp index f5e89d436..f8ba0ea72 100644 --- a/src/kvirc/kvs/kvi_kvs_useraction.cpp +++ b/src/kvirc/kvs/kvi_kvs_useraction.cpp @@ -37,14 +37,24 @@ KviKvsUserAction::KviKvsUserAction(QObject * pParent, const QString &szVisibleNameCode, const QString &szDescriptionCode, const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, + const QString &szBigIconId, + const QString &szSmallIconId, unsigned int uFlags, - const QString &szKeySequence) - : KviKvsAction(pParent,szName,szScriptCode,szVisibleNameCode,szDescriptionCode,0,szBigIcon,0,uFlags,szKeySequence) + const QString &szKeySequence + ) + : KviKvsAction( + pParent, + szName, + szScriptCode, + szVisibleNameCode, + szDescriptionCode, + NULL, + szBigIconId, + szSmallIconId, + uFlags, + szKeySequence + ) { - m_szSmallIcon = szSmallIcon; - QString szKvsName = "action::"; szKvsName += szName; @@ -71,39 +81,67 @@ KviKvsUserAction::KviKvsUserAction(QObject * pParent) KviKvsUserAction::~KviKvsUserAction() { - if(m_pDescriptionScript)delete m_pDescriptionScript; - if(m_pVisibleNameScript)delete m_pVisibleNameScript; + if(m_pDescriptionScript) + delete m_pDescriptionScript; + if(m_pVisibleNameScript) + delete m_pVisibleNameScript; } -KviKvsUserAction * KviKvsUserAction::createInstance(QObject * pParent, +KviKvsUserAction * KviKvsUserAction::createInstance( + QObject * pParent, const QString &szName, const QString &szScriptCode, const QString &szVisibleNameCode, const QString &szDescriptionCode, const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, + const QString &szBigIconId, + const QString &szSmallIconId, unsigned int uFlags, - const QString &szKeySequence) + const QString &szKeySequence + ) { - return new KviKvsUserAction(pParent,szName,szScriptCode,szVisibleNameCode,szDescriptionCode,szCategory,szBigIcon,szSmallIcon,uFlags,szKeySequence); + return new KviKvsUserAction( + pParent, + szName, + szScriptCode, + szVisibleNameCode, + szDescriptionCode, + szCategory, + szBigIconId, + szSmallIconId, + uFlags, + szKeySequence + ); } void KviKvsUserAction::exportToKvs(QString &szBuffer) { - exportToKvs(szBuffer,m_szName,scriptCode(),visibleNameCode(),descriptionCode(),m_szCategory,m_szBigIcon,m_szSmallIcon,m_uFlags,m_szKeySequence); + exportToKvs( + szBuffer, + m_szName, + scriptCode(), + visibleNameCode(), + descriptionCode(), + m_szCategory, + m_szBigIconId, + m_szSmallIconId, + m_uFlags, + m_szKeySequence + ); } -void KviKvsUserAction::exportToKvs(QString &szBuffer, +void KviKvsUserAction::exportToKvs( + QString &szBuffer, const QString &szName, const QString &szScriptCode, const QString &szVisibleName, const QString &szDescription, const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, + const QString &szBigIconId, + const QString &szSmallIconId, unsigned int uFlags, - const QString &szKeySequence) + const QString &szKeySequence + ) { szBuffer += "action.create"; if(uFlags & NeedsContext) @@ -130,46 +168,73 @@ void KviKvsUserAction::exportToKvs(QString &szBuffer, szBuffer += " -s"; } } + if(!szCategory.isEmpty()) { szBuffer += " -t="; szBuffer += szCategory; } + if(!szKeySequence.isEmpty()) { szBuffer += " -k=\""; szBuffer += szKeySequence; szBuffer += "\""; } + szBuffer += " (\""; szBuffer += szName; szBuffer += "\","; - QString tmp = szVisibleName; - if(tmp.contains('$')) + + QString tmp; + if(szVisibleName.contains('$')) { szBuffer += tmp; szBuffer += ","; } else { + tmp = szVisibleName; tmp.replace("\"","\\\""); szBuffer += "\""; szBuffer += tmp; szBuffer += "\","; } - tmp = szDescription; - if(tmp.contains('$')) + + if(szDescription.contains('$')) { + szBuffer += szDescription; + szBuffer += ","; + } else { + tmp = szDescription; + tmp.replace("\"","\\\""); + szBuffer += "\""; szBuffer += tmp; - szBuffer += ",\""; + szBuffer += "\","; + } + + if(szBigIconId.contains('$')) + { + szBuffer += szBigIconId; + szBuffer += ","; + } else { + tmp = szBigIconId; + tmp.replace("\"","\\\""); + szBuffer += "\""; + szBuffer += tmp; + szBuffer += "\","; + } + + if(szSmallIconId.contains('$')) + { + szBuffer += szSmallIconId; + szBuffer += ")\n"; } else { + tmp = szSmallIconId; tmp.replace("\"","\\\""); szBuffer += "\""; szBuffer += tmp; - szBuffer += "\",\""; + szBuffer += "\")\n"; } - szBuffer += szBigIcon; - szBuffer += "\",\""; - szBuffer += szSmallIcon; - szBuffer += "\")\n"; + tmp = szScriptCode; KviCommandFormatter::blockFromBuffer(tmp); szBuffer += tmp; @@ -181,35 +246,36 @@ void KviKvsUserAction::exportToKvs(QString &szBuffer, const QString & KviKvsUserAction::visibleName() { - if(!m_pVisibleNameScript)return m_szVisibleName; - if(!m_pVisibleNameScript->run(g_pActiveWindow,0,m_szVisibleName))m_szVisibleName = m_pVisibleNameScript->code(); + if(!m_pVisibleNameScript) + return m_szVisibleName; + if(!m_pVisibleNameScript->run(g_pActiveWindow,0,m_szVisibleName)) + m_szVisibleName = m_pVisibleNameScript->code(); return m_szVisibleName; } const QString & KviKvsUserAction::description() { - if(!m_pDescriptionScript)return m_szDescription; - if(!m_pDescriptionScript->run(g_pActiveWindow,0,m_szDescription))m_szDescription = m_pDescriptionScript->code(); + if(!m_pDescriptionScript) + return m_szDescription; + if(!m_pDescriptionScript->run(g_pActiveWindow,0,m_szDescription)) + m_szDescription = m_pDescriptionScript->code(); return m_szDescription; } const QString & KviKvsUserAction::visibleNameCode() { - if(!m_pVisibleNameScript)return m_szVisibleName; + if(!m_pVisibleNameScript) + return m_szVisibleName; return m_pVisibleNameScript->code(); } const QString & KviKvsUserAction::descriptionCode() { - if(!m_pDescriptionScript)return m_szDescription; + if(!m_pDescriptionScript) + return m_szDescription; return m_pDescriptionScript->code(); } -QPixmap * KviKvsUserAction::smallIcon() -{ - return g_pIconManager->getImage(m_szSmallIcon.toUtf8().data()); -} - bool KviKvsUserAction::isKviUserActionNeverOverrideThis() { return true; @@ -238,8 +304,8 @@ bool KviKvsUserAction::load(KviConfig * cfg) m_pDescriptionScript = new KviKvsScript(szTmp,m_szDescription,KviKvsScript::Parameter); - m_szBigIcon = cfg->readQStringEntry("BigIcon"); - m_szSmallIcon = cfg->readQStringEntry("SmallIcon"); + m_szBigIconId = cfg->readQStringEntry("BigIcon"); + m_szSmallIconId = cfg->readQStringEntry("SmallIcon"); m_szKeySequence = cfg->readQStringEntry("KeySequence"); m_szCategory = cfg->readQStringEntry("Category"); m_pCategory = KviActionManager::instance()->category(m_szCategory); @@ -261,8 +327,8 @@ void KviKvsUserAction::save(KviConfig * cfg) { if(!m_pDescriptionScript->code().isEmpty())cfg->writeEntry("Description",m_pDescriptionScript->code()); } - if(!m_szBigIcon.isEmpty())cfg->writeEntry("BigIcon",m_szBigIcon); - if(!m_szSmallIcon.isEmpty())cfg->writeEntry("SmallIcon",m_szSmallIcon); + if(!m_szBigIconId.isEmpty())cfg->writeEntry("BigIcon",m_szBigIconId); + if(!m_szSmallIconId.isEmpty())cfg->writeEntry("SmallIcon",m_szSmallIconId); if(!m_szCategory.isEmpty())cfg->writeEntry("Category",m_szCategory); if(!m_szKeySequence.isEmpty())cfg->writeEntry("KeySequence",m_szKeySequence); if(m_uFlags != 0)cfg->writeEntry("Flags",m_uFlags); diff --git a/src/kvirc/kvs/kvi_kvs_useraction.h b/src/kvirc/kvs/kvi_kvs_useraction.h index d7d858e06..80b78881e 100644 --- a/src/kvirc/kvs/kvi_kvs_useraction.h +++ b/src/kvirc/kvs/kvi_kvs_useraction.h @@ -35,16 +35,18 @@ class KVIRC_API KviKvsUserAction : public KviKvsAction friend class KviActionManager; Q_OBJECT public: - KviKvsUserAction(QObject * pParent, - const QString &szName, - const QString &szScriptCode, - const QString &szVisibleNameCode, - const QString &szDescriptionCode, - const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, - unsigned int uFlags, - const QString &szKeySequence = QString()); + KviKvsUserAction( + QObject * pParent, + const QString &szName, + const QString &szScriptCode, + const QString &szVisibleNameCode, + const QString &szDescriptionCode, + const QString &szCategory, + const QString &szBigIconId, + const QString &szSmallIconId, + unsigned int uFlags, + const QString &szKeySequence = QString() + ); KviKvsUserAction(QObject * pParent); ~KviKvsUserAction(); @@ -52,19 +54,20 @@ public: // This MUST be used by the modules to allocate action structures // instead of the new operator. // See kvi_heapobject.cpp for an explaination. - static KviKvsUserAction * createInstance(QObject * pParent, - const QString &szName, - const QString &szScriptCode, - const QString &szVisibleNameCode, - const QString &szDescriptionCode, - const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, - unsigned int uFlags, - const QString &szKeySequence = QString()); + static KviKvsUserAction * createInstance( + QObject * pParent, + const QString &szName, + const QString &szScriptCode, + const QString &szVisibleNameCode, + const QString &szDescriptionCode, + const QString &szCategory, + const QString &szBigIconId, + const QString &szSmallIconId, + unsigned int uFlags, + const QString &szKeySequence = QString() + ); void suicide() { delete this; }; protected: - QString m_szSmallIcon; QString m_szCategory; KviKvsScript * m_pDescriptionScript; KviKvsScript * m_pVisibleNameScript; @@ -77,19 +80,19 @@ public: virtual const QString & description(); const QString & visibleNameCode(); const QString & descriptionCode(); - virtual QPixmap * smallIcon(); const QString & category(){ return m_szCategory; }; - const QString & smallIconString(){ return m_szSmallIcon; }; - static void exportToKvs(QString &szBuffer, - const QString &szName, - const QString &szScriptCode, - const QString &szVisibleName, - const QString &szDescription, - const QString &szCategory, - const QString &szBigIcon, - const QString &szSmallIcon, - unsigned int uFlags, - const QString &szKeySequence); + static void exportToKvs( + QString &szBuffer, + const QString &szName, + const QString &szScriptCode, + const QString &szVisibleName, + const QString &szDescription, + const QString &szCategory, + const QString &szBigIcon, + const QString &szSmallIcon, + unsigned int uFlags, + const QString &szKeySequence + ); void exportToKvs(QString &szBuffer); }; diff --git a/src/kvirc/ui/kvi_frame.cpp b/src/kvirc/ui/kvi_frame.cpp index 44ab96edb..190bf0749 100644 --- a/src/kvirc/ui/kvi_frame.cpp +++ b/src/kvirc/ui/kvi_frame.cpp @@ -899,38 +899,41 @@ void KviFrame::fillToolBarsPopup(KviTalPopupMenu * p) KviPointerHashTableIterator<QString,KviCustomToolBarDescriptor> it2(*(KviCustomToolBarManager::instance()->descriptors())); if(it2.current()) { - if(cnt > 0)p->insertSeparator(); + if(cnt > 0) + p->insertSeparator(); + while(KviCustomToolBarDescriptor * d = it2.current()) { QString label = __tr2qs("Show %1").arg(d->label()); QString ico = d->iconId(); - // use the icon only if there is no check - if(d->toolBar()) + if(!ico.isEmpty()) { - id = p->insertItem(label); - p->setItemChecked(id,true); - } else { - if(!ico.isEmpty()) + QPixmap * pix = g_pIconManager->getImage(d->iconId()); + if(pix) { - QPixmap * pix = g_pIconManager->getImage(d->iconId()); - if(pix) - { - id = p->insertItem(*pix,label); - } else { - id = p->insertItem(label); - } + id = p->insertItem(*pix,label); } else { id = p->insertItem(label); } + } else { + id = p->insertItem(label); } p->setItemParameter(id,d->internalId()); + p->setItemChecked(id,d->toolBar()); ++it2; cnt++; } } - if(cnt > 0)p->insertSeparator(); - p->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_TOOLBAR)),__tr2qs("Customize..."),this,SLOT(customizeToolBars())); + if(cnt > 0) + p->insertSeparator(); + + p->insertItem( + *(g_pIconManager->getSmallIcon(KVI_SMALLICON_TOOLBAR)), + __tr2qs("Customize..."), + this, + SLOT(customizeToolBars()) + ); } void KviFrame::customizeToolBars() diff --git a/src/kvirc/ui/kvi_imagedialog.cpp b/src/kvirc/ui/kvi_imagedialog.cpp index 2c841afaa..58d51a3d1 100644 --- a/src/kvirc/ui/kvi_imagedialog.cpp +++ b/src/kvirc/ui/kvi_imagedialog.cpp @@ -95,8 +95,10 @@ KviImageDialog::KviImageDialog(QWidget * par, int types, int initialType, const QString &szInitialDir, - int maxPreviewFileSize,bool modal) -: QDialog(par) + int maxPreviewFileSize, + bool modal + ) + : QDialog(par) { m_szInitialPath = szInitialDir; setModal(modal); diff --git a/src/modules/actioneditor/actioneditor.cpp b/src/modules/actioneditor/actioneditor.cpp index ca2c31a0f..3cbaf73ee 100644 --- a/src/modules/actioneditor/actioneditor.cpp +++ b/src/modules/actioneditor/actioneditor.cpp @@ -341,6 +341,35 @@ void KviSingleActionEditor::specificWindowsCheckToggled(bool) m_pWindowDccChatCheck->setEnabled(b); } +void KviSingleActionEditor::displaySmallIcon(const QString &szIconId) +{ + QPixmap * pix = g_pIconManager->getImage(szIconId); + + if(pix) + { + m_pSmallIconEdit->setText(szIconId); + m_pSmallIconButton->setIcon(QIcon(*pix)); + } else { + m_pSmallIconEdit->setText(QString()); + m_pSmallIconButton->setIcon(QIcon()); + } + +} + +void KviSingleActionEditor::displayBigIcon(const QString &szIconId) +{ + QPixmap * pix = g_pIconManager->getImage(szIconId); + + if(pix) + { + m_pBigIconEdit->setText(szIconId); + m_pBigIconButton->setIcon(QIcon(*pix)); + } else { + m_pBigIconEdit->setText(QString()); + m_pBigIconButton->setIcon(QIcon()); + } +} + void KviSingleActionEditor::chooseSmallIcon() { if(!m_pActionData)return; @@ -348,16 +377,10 @@ void KviSingleActionEditor::chooseSmallIcon() int ret = d->exec(); QString s = d->selectedImage(); delete d; - if(ret != QDialog::Accepted)return; - s.replace("$icon(",""); - s.chop(1); - int id=g_pIconManager->getSmallIconIdFromName(s); - QString szId; - szId.setNum(id); - QPixmap * p = g_pIconManager->getImage(szId); - if(!p)return; - m_pSmallIconEdit->setText(s); - m_pSmallIconButton->setIcon(QIcon(*p)); + if(ret != QDialog::Accepted) + return; + + displaySmallIcon(s); } void KviSingleActionEditor::chooseBigIcon() @@ -367,11 +390,10 @@ void KviSingleActionEditor::chooseBigIcon() int ret = d->exec(); QString s = d->selectedImage(); delete d; - if(ret != QDialog::Accepted)return; - QPixmap * p = g_pIconManager->getBigIcon(s); - if(!p)return; - m_pBigIconEdit->setText(s); - m_pBigIconButton->setIcon(QIcon(*p)); + if(ret != QDialog::Accepted) + return; + + displayBigIcon(s); } void KviSingleActionEditor::setActionData(KviActionData * d) @@ -416,24 +438,8 @@ void KviSingleActionEditor::setActionData(KviActionData * d) m_pDescriptionEdit->setEnabled(true); m_pSmallIconEdit->setEnabled(true); m_pBigIconEdit->setEnabled(true); - QPixmap * p = g_pIconManager->getImage(d->m_szSmallIcon); - if(p) - { - m_pSmallIconEdit->setText(d->m_szSmallIcon); - m_pSmallIconButton->setIcon(QIcon(*p)); - } else { - m_pSmallIconEdit->setText(""); - m_pSmallIconButton->setIcon(QIcon()); - } - p = g_pIconManager->getImage(d->m_szBigIcon); - if(p) - { - m_pBigIconEdit->setText(d->m_szBigIcon); - m_pBigIconButton->setIcon(QIcon(*p)); - } else { - m_pBigIconEdit->setText(""); - m_pBigIconButton->setIcon(QIcon()); - } + displaySmallIcon(d->m_szSmallIcon); + displayBigIcon(d->m_szBigIcon); m_pSmallIconButton->setEnabled(true); m_pBigIconButton->setEnabled(true); m_pNeedsContextCheck->setEnabled(true); @@ -645,16 +651,18 @@ KviActionEditor::KviActionEditor(QWidget * par) { if(a->isKviUserActionNeverOverrideThis()) { - KviActionData * ad = new KviActionData(a->name(), - ((KviKvsUserAction *)a)->scriptCode(), - ((KviKvsUserAction *)a)->visibleNameCode(), - ((KviKvsUserAction *)a)->descriptionCode(), - a->category() ? a->category()->name() : KviActionManager::categoryGeneric()->name(), - a->bigIconString(), - ((KviKvsUserAction *)a)->smallIconString(), - a->flags(), - a->keySequence(), - 0); + KviActionData * ad = new KviActionData( + a->name(), + ((KviKvsUserAction *)a)->scriptCode(), + ((KviKvsUserAction *)a)->visibleNameCode(), + ((KviKvsUserAction *)a)->descriptionCode(), + a->category() ? a->category()->name() : KviActionManager::categoryGeneric()->name(), + a->bigIconId(), + a->smallIconId(), + a->flags(), + a->keySequence(), + 0 + ); KviActionEditorTreeWidgetItem * lvi = new KviActionEditorTreeWidgetItem(m_pTreeWidget,ad); ad->m_pItem = lvi; if(ad->m_szName == g_szLastEditedAction) @@ -699,16 +707,18 @@ void KviActionEditor::exportActions() { KviActionData * a = ((KviActionEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->actionData(); - KviKvsUserAction::exportToKvs(szCode, - a->m_szName, - a->m_szScriptCode, - a->m_szVisibleName, - a->m_szDescription, - a->m_szCategory, - a->m_szBigIcon, - a->m_szSmallIcon, - a->m_uFlags, - a->m_szKeySequence); + KviKvsUserAction::exportToKvs( + szCode, + a->m_szName, + a->m_szScriptCode, + a->m_szVisibleName, + a->m_szDescription, + a->m_szCategory, + a->m_szBigIcon, + a->m_szSmallIcon, + a->m_uFlags, + a->m_szKeySequence + ); } } diff --git a/src/modules/actioneditor/actioneditor.h b/src/modules/actioneditor/actioneditor.h index dc8ea08b6..8268b5be5 100644 --- a/src/modules/actioneditor/actioneditor.h +++ b/src/modules/actioneditor/actioneditor.h @@ -145,6 +145,8 @@ public: protected slots: void chooseSmallIcon(); void chooseBigIcon(); + void displaySmallIcon(const QString &szIconId); + void displayBigIcon(const QString &szIconId); void needsContextCheckToggled(bool); void needsConnectionCheckToggled(bool); void specificWindowsCheckToggled(bool); diff --git a/src/modules/toolbareditor/toolbareditor.cpp b/src/modules/toolbareditor/toolbareditor.cpp index 7accfd5a5..afbe0de71 100644 --- a/src/modules/toolbareditor/toolbareditor.cpp +++ b/src/modules/toolbareditor/toolbareditor.cpp @@ -205,10 +205,11 @@ KviCustomToolBarPropertiesDialog::~KviCustomToolBarPropertiesDialog() void KviCustomToolBarPropertiesDialog::iconSelected(const QString &szIconId) { - QPixmap * p = g_pIconManager->getImage(szIconId.toUtf8().data()); - if(p) + QPixmap * pix = g_pIconManager->getImage(szIconId); + + if(pix) { - m_pIconButton->setIcon(*p); + m_pIconButton->setIcon(QIcon(*pix)); m_szIconId = szIconId; m_pIconEdit->setText(szIconId); } else { diff --git a/src/modules/url/libkviurl.cpp b/src/modules/url/libkviurl.cpp index 4b685ab78..d567b4fdd 100644 --- a/src/modules/url/libkviurl.cpp +++ b/src/modules/url/libkviurl.cpp @@ -138,14 +138,15 @@ void KviUrlDialogTreeWidget::paintEvent(QPaintEvent * event) } KviUrlAction::KviUrlAction(QObject * pParent) -: KviKvsAction(pParent, - "url.list", - "url.list", - __tr2qs("Show URL List"), - __tr2qs("Shows the URL list window"), - KviActionManager::categoryGeneric(), - "kvi_bigicon_www.png", - KVI_SMALLICON_URL +: KviKvsAction( + pParent, + "url.list", + "url.list", + __tr2qs("Show URL List"), + __tr2qs("Shows the URL list window"), + KviActionManager::categoryGeneric(), + "kvi_bigicon_www.png", + QString("%1").arg(KVI_SMALLICON_URL) ) { } @@ -157,7 +158,7 @@ KviUrlAction::~KviUrlAction() // ---------------------------- CLASS URLDIALOG ------------------------begin // UrlDialog::UrlDialog(KviPointerList<KviUrl> *) -:KviWindow(KVI_WINDOW_TYPE_TOOL,g_pFrame,"URL List") + :KviWindow(KVI_WINDOW_TYPE_TOOL,g_pFrame,"URL List") { setAutoFillBackground(false); |
