aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Szymon Tomasz Stefanek2010-06-07 01:12:27 +0000
committerGravatar Szymon Tomasz Stefanek2010-06-07 01:12:27 +0000
commit7ec4dda4219f796cade73f00fea14fc4b2bdd7a5 (patch)
treeca824edd40116284cb126d9f62608445a20529ae
parentCorrectly enable the 'Connect Now' button at startup (diff)
downloadKVIrc-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.cpp36
-rw-r--r--src/kvirc/kernel/kvi_action.h40
-rw-r--r--src/kvirc/kernel/kvi_coreactions.cpp73
-rw-r--r--src/kvirc/kernel/kvi_coreactions.h12
-rw-r--r--src/kvirc/kernel/kvi_iconmanager.cpp27
-rw-r--r--src/kvirc/kvs/kvi_kvs_action.cpp22
-rw-r--r--src/kvirc/kvs/kvi_kvs_action.h22
-rw-r--r--src/kvirc/kvs/kvi_kvs_useraction.cpp152
-rw-r--r--src/kvirc/kvs/kvi_kvs_useraction.h69
-rw-r--r--src/kvirc/ui/kvi_frame.cpp35
-rw-r--r--src/kvirc/ui/kvi_imagedialog.cpp6
-rw-r--r--src/modules/actioneditor/actioneditor.cpp116
-rw-r--r--src/modules/actioneditor/actioneditor.h2
-rw-r--r--src/modules/toolbareditor/toolbareditor.cpp7
-rw-r--r--src/modules/url/libkviurl.cpp19
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);