diff options
| author | 2008-05-16 13:35:26 +0000 | |
|---|---|---|
| committer | 2008-05-16 13:35:26 +0000 | |
| commit | 716389d8fc555b010e84f9fdde23b2adcd9521ca (patch) | |
| tree | 2c3e054070808b514e8033c7113b3c2ba10db9c9 | |
| parent | quick fix (diff) | |
| download | KVIrc-716389d8fc555b010e84f9fdde23b2adcd9521ca.tar.gz KVIrc-716389d8fc555b010e84f9fdde23b2adcd9521ca.tar.bz2 KVIrc-716389d8fc555b010e84f9fdde23b2adcd9521ca.zip | |
more QT4 port commit (wip)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1792 17fca916-40b9-46aa-a4ea-0a15b648b75c
23 files changed, 293 insertions, 214 deletions
@@ -20,28 +20,25 @@ src/kvilib/tal src/kvirc src/kvirc/kernel - kvi_app.cpp - kvi_customtoolbardescriptor.cpp - kvi_customtoolbardescriptor.h - kvi_customtoolbarmanager.cpp - kvi_customtoolbarmanager.h + app.cpp + kvi_filetransfer.cpp kvi_iconmanager.cpp - kvi_iconmanager.h -src/kvirc/ui - kvi_actiondrawer.cpp - kvi_actiondrawer.h + kvi_ircconnection.cpp + kvi_options.cpp +/module(incomplete list): + kvi_modulemanager.cpp +/ui(incomplete list): + kvi_channel.cpp + kvi_colorwin.cpp + kvi_ctcppagedialog.cpp kvi_console.cpp - kvi_console.h kvi_ircviewtools.cpp kvi_listview.cpp - kvi_listview.h kvi_mdicaption.cpp kvi_mdichild.cpp kvi_statusbar.cpp kvi_styled_controls.cpp - kvi_styled_controls.h kvi_toolwindows_container.cpp - kvi_toolwindows_container.h src/modules addon - q3support in dialog.* diff --git a/src/kvirc/kernel/kvi_actionmanager.cpp b/src/kvirc/kernel/kvi_actionmanager.cpp index 869cf9fd7..1ea024f58 100644 --- a/src/kvirc/kernel/kvi_actionmanager.cpp +++ b/src/kvirc/kernel/kvi_actionmanager.cpp @@ -274,7 +274,7 @@ KviAction * KviActionManager::getAction(const QString &szName) { KviAction * a = m_pActions->find(szName); if(a)return a; - int idx = szName.find('.'); + int idx = szName.indexOf('.'); if(idx < 0) { // backward compatibility: try to lookup the name with the kvirc. prefix diff --git a/src/kvirc/kernel/kvi_app_fs.cpp b/src/kvirc/kernel/kvi_app_fs.cpp index ff3d5a5be..367df2cc9 100644 --- a/src/kvirc/kernel/kvi_app_fs.cpp +++ b/src/kvirc/kernel/kvi_app_fs.cpp @@ -125,7 +125,7 @@ void KviApp::getLocalKvircDirectory(QString &szData,KvircSubdir dir,const QStrin if(szData.isEmpty()) { // unset ? - KVI_OPTION_STRING(KviOption_stringIncomingPath) = QDir::homeDirPath(); + KVI_OPTION_STRING(KviOption_stringIncomingPath) = QDir::homePath(); if(!KVI_OPTION_STRING(KviOption_stringIncomingPath).endsWith(QString(QChar(KVI_PATH_SEPARATOR_CHAR)))) KVI_OPTION_STRING(KviOption_stringIncomingPath).append(KVI_PATH_SEPARATOR_CHAR); KVI_OPTION_STRING(KviOption_stringIncomingPath).append(KVI_DEFAULT_INCOMING_SUBDIRECTORY_NAME); @@ -399,7 +399,7 @@ bool KviApp::findUserFile(KviStr &szRetPath,const char *filename) if(findImageInImageSearchPath(szRetPath,filename))return true; // Last resort ... - szRetPath = QDir::homeDirPath(); + szRetPath = QDir::homePath(); szRetPath.ensureLastCharIs(KVI_PATH_SEPARATOR_CHAR); szRetPath.append(filename); if(KviFileUtils::fileExists(szRetPath.ptr()))return true;; @@ -481,7 +481,7 @@ bool KviApp::mapImageFile(QString &szRetPath,const QString &filename) QString szBestMatch; - while(szRetPath.find(KVI_PATH_SEPARATOR) != -1) + while(szRetPath.indexOf(KVI_PATH_SEPARATOR) != -1) { KviQString::cutToFirst(szRetPath,KVI_PATH_SEPARATOR); @@ -521,7 +521,7 @@ bool KviApp::mapImageFile(QString &szRetPath,const QString &filename) } // Last resort - szBuffer = QDir::homeDirPath(); + szBuffer = QDir::homePath(); szBuffer.ensureLastCharIs(KVI_PATH_SEPARATOR_CHAR); szBuffer.append(szRetPath); if(KviFileUtils::fileExists(szBuffer.ptr())) @@ -596,7 +596,7 @@ bool KviApp::findImage(QString &szRetPath,const QString &filename) if(findImageInImageSearchPath(szRetPath,filename))return true; // Last resort - szRetPath = QDir::homeDirPath(); + szRetPath = QDir::homePath(); KviQString::ensureLastCharIs(szRetPath,KVI_PATH_SEPARATOR_CHAR); szRetPath.append(filename); if(KviFileUtils::fileExists(szRetPath))return true; @@ -675,7 +675,7 @@ bool KviApp::findSmallIcon(QString &szRetPath,const QString &filename) if(findImageInImageSearchPath(szRetPath,filename))return true; // Last resort... bleah :/ - szRetPath = QDir::homeDirPath(); + szRetPath = QDir::homePath(); KviQString::ensureLastCharIs(szRetPath,KVI_PATH_SEPARATOR_CHAR); szRetPath.append(filename); if(KviFileUtils::fileExists(szRetPath))return true; diff --git a/src/kvirc/kernel/kvi_app_setup.cpp b/src/kvirc/kernel/kvi_app_setup.cpp index 8418367e8..f0380bf4e 100644 --- a/src/kvirc/kernel/kvi_app_setup.cpp +++ b/src/kvirc/kernel/kvi_app_setup.cpp @@ -586,7 +586,7 @@ void KviApp::findGlobalKvircDirectory() //Last resource , try $HOME and $HOME/.kde for(int k=0;usualKvircGlobalDir[k] != 0;k++){ - m_szGlobalKvircDir = QDir::homeDirPath(); + m_szGlobalKvircDir = QDir::homePath(); m_szGlobalKvircDir+= usualKvircGlobalDir[k]; m_szGlobalKvircDir+= KVIRC_VERSION_BRANCH; if(checkGlobalKvircDirectory(m_szGlobalKvircDir))return; @@ -594,7 +594,7 @@ void KviApp::findGlobalKvircDirectory() #ifdef COMPILE_KDE_SUPPORT for(int k=0;usualKvircGlobalDir[k] != 0;k++){ - m_szGlobalKvircDir = QDir::homeDirPath(); + m_szGlobalKvircDir = QDir::homePath(); m_szGlobalKvircDir+= "/.kde"; m_szGlobalKvircDir+= usualKvircGlobalDir[k]; m_szGlobalKvircDir+= KVIRC_VERSION_BRANCH; @@ -670,7 +670,7 @@ bool KviApp::findLocalKvircDirectory() } #endif //Check if we have a special .kvirc.rc in $HOME - QString szF = QDir::homeDirPath(); + QString szF = QDir::homePath(); if(!m_szConfigFile.isEmpty()) { @@ -838,7 +838,7 @@ void KviApp::saveKvircDirectory() } #endif //COMPILE_KDE_SUPPORT // In NON-KDE we use $HOME/.kvirc.rc or $HOME/kvirc.ini - QString szF = QDir::homeDirPath(); + QString szF = QDir::homePath(); if(!m_szConfigFile.isEmpty()) { //Must be changed from QString::fromLocal8Bit to QTextCodec::codecForLocale() diff --git a/src/kvirc/kernel/kvi_coreactions.cpp b/src/kvirc/kernel/kvi_coreactions.cpp index 421891023..285356e86 100644 --- a/src/kvirc/kernel/kvi_coreactions.cpp +++ b/src/kvirc/kernel/kvi_coreactions.cpp @@ -597,8 +597,8 @@ void KviConnectAction::activeContextStateChanged() for(QToolButton * b = (QToolButton *)bl->first();b;b =(QToolButton *)bl->next()) { if(!b->isEnabled())b->setEnabled(true); - b->setPixmap(*p); - b->setTextLabel(txt); + b->setIcon(QIcon(*p)); + b->setText(txt); } } else { for(QToolButton * b = (QToolButton *)bl->first();b;b = (QToolButton *)bl->next()) @@ -743,7 +743,7 @@ QWidget * KviSubmenuAction::addToCustomToolBar(KviCustomToolBar *t) visibleName(), visibleName(), this,SLOT(activate()),t,name()); - b->setPopup(m_pPopup); + b->setMenu(m_pPopup); b->setPopupMode( scriptCode().isEmpty() ? QToolButton::InstantPopup : QToolButton::MenuButtonPopup); t->addWidget(b); @@ -922,7 +922,7 @@ void KviChangeUserModeAction::popupAboutToShow() QChar ccc = szModes[0]; szModes.remove(0,1); id = m_pPopup->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_MODE)),QString("+%1 Mode").arg(ccc)); - m_pPopup->setItemChecked(id,c->connection()->userInfo()->hasUserMode(ccc.latin1())); + m_pPopup->setItemChecked(id,c->connection()->userInfo()->hasUserMode(ccc.toLatin1())); } } @@ -935,7 +935,7 @@ void KviChangeUserModeAction::popupActivated(int id) if(!c->isConnected())return; if(!text.isEmpty()) { - int idx = text.find('+'); + int idx = text.indexOf('+'); if(idx != -1) { idx++; @@ -1009,8 +1009,8 @@ void KviGoAwayAction::activeContextStateChanged() for(QToolButton * b = (QToolButton *)bl->first();b;b =(QToolButton *)bl->next()) { if(!b->isEnabled())b->setEnabled(true); - b->setPixmap(*p); - b->setTextLabel(txt); + b->setIcon(QIcon(*p)); + b->setText(txt); } m_uInternalFlags |= KVI_ACTION_FLAG_ENABLED; } else { diff --git a/src/kvirc/kernel/kvi_customtoolbardescriptor.cpp b/src/kvirc/kernel/kvi_customtoolbardescriptor.cpp index e492460fb..6efba86af 100644 --- a/src/kvirc/kernel/kvi_customtoolbardescriptor.cpp +++ b/src/kvirc/kernel/kvi_customtoolbardescriptor.cpp @@ -128,7 +128,7 @@ void KviCustomToolBarDescriptor::fillToolBar() if(m_pActions->count() == 0) { // force layout of the toolbar - QApplication::postEvent(m_pToolBar,new QEvent(QEvent::LayoutHint)); + QApplication::postEvent(m_pToolBar,new QEvent(QEvent::LayoutRequest)); } else { KviPointerList<QString> dying; dying.setAutoDelete(false); @@ -168,7 +168,7 @@ void KviCustomToolBarDescriptor::rename(const QString &szNewLabelCode) { delete m_pLabelScript; createLabelScript(szNewLabelCode); - if(m_pToolBar)m_pToolBar->setLabel(label()); + if(m_pToolBar)m_pToolBar->setWindowTitle(label()); } void KviCustomToolBarDescriptor::clear() diff --git a/src/kvirc/kernel/kvi_customtoolbarmanager.cpp b/src/kvirc/kernel/kvi_customtoolbarmanager.cpp index 7446306b7..a258c436a 100644 --- a/src/kvirc/kernel/kvi_customtoolbarmanager.cpp +++ b/src/kvirc/kernel/kvi_customtoolbarmanager.cpp @@ -70,7 +70,7 @@ void KviCustomToolBarManager::done() QString KviCustomToolBarManager::idForNewToolBar(const QString &szTemplate) { QString s; - QString szTT = szTemplate.lower(); + QString szTT = szTemplate.toLower(); szTT.remove(" "); szTT.remove("$tr"); szTT.remove("("); diff --git a/src/kvirc/kernel/kvi_iconmanager.cpp b/src/kvirc/kernel/kvi_iconmanager.cpp index 4c4cca952..8de06bd8f 100644 --- a/src/kvirc/kernel/kvi_iconmanager.cpp +++ b/src/kvirc/kernel/kvi_iconmanager.cpp @@ -383,7 +383,8 @@ void KviIconWidget::init() for(i = 0;i < KVI_NUM_SMALL_ICONS;i++) { KviStr tmp(KviStr::Format,"%d",i); - QLabel * l = new QLabel(this,tmp.ptr()); + QLabel * l = new QLabel(this); + l->setObjectName(tmp.ptr()); l->setPixmap(*(g_pIconManager->getSmallIcon(i))); g->addWidget(l,(i / 10) + 1,(i % 10) + 1); l->installEventFilter(this); @@ -407,7 +408,7 @@ bool KviIconWidget::eventFilter(QObject * o,QEvent *e) { if(o->inherits("QLabel")) { - KviStr szName = ((QLabel *)o)->name(); + KviStr szName = ((QLabel *)o)->objectName(); bool bOk; int iVal = szName.toInt(&bOk); if(bOk)emit selected(iVal); @@ -666,8 +667,8 @@ KviCachedPixmap * KviIconManager::getPixmapWithCacheScaleOnLoad(const QString &s scaleW = (scaleH * pix->width()) / pix->height(); } - QImage img = pix->convertToImage(); - pix->convertFromImage(img.smoothScale(scaleW,scaleH)); + QImage img = pix->toImage(); + pix->fromImage(img.scaled(scaleW,scaleH,Qt::IgnoreAspectRatio,Qt::SmoothTransformation)); } } else { return 0; @@ -727,8 +728,8 @@ QPixmap * KviIconManager::getBigIcon(const QString &szName) p = getSmallIcon(idx % KVI_NUM_SMALL_ICONS); if(p) { - QImage tmpi = p->convertToImage(); - QImage tmp2 = tmpi.smoothScale(32,32); + QImage tmpi = p->toImage(); + QImage tmp2 = tmpi.scaled(32,32,Qt::IgnoreAspectRatio,Qt::SmoothTransformation); KviCachedPixmap * cp = new KviCachedPixmap(new QPixmap(tmp2),QString::null); addToCache(tmpName,cp); return cp->pixmap(); diff --git a/src/kvirc/kernel/kvi_ipc.cpp b/src/kvirc/kernel/kvi_ipc.cpp index 28ded735b..cd0781b07 100644 --- a/src/kvirc/kernel/kvi_ipc.cpp +++ b/src/kvirc/kernel/kvi_ipc.cpp @@ -182,8 +182,9 @@ ////////////////////////////////////////////////////////////////////// KviIpcSentinel::KviIpcSentinel() - : QWidget(0,"kvirc4_ipc_sentinel") + : QWidget(0) { + setObjectName("kvirc4_ipc_sentinel"); #ifdef COMPILE_ON_WINDOWS setWindowTitle("kvirc4_ipc_sentinel"); #else //!COMPILE_ON_WINDOWS diff --git a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp index a69f86b56..d065219cb 100644 --- a/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp +++ b/src/kvirc/kernel/kvi_ircconnectionserverinfo.cpp @@ -57,16 +57,16 @@ void KviIrcConnectionServerInfo::setSupportedChannelModes(const QString &szSuppo { int pos=-1; - pos=szSupportedChannelModes.find(','); + pos=szSupportedChannelModes.indexOf(','); if(pos>=0) m_szListModes=szSupportedChannelModes.left(pos); - pos=szSupportedChannelModes.findRev(','); + pos=szSupportedChannelModes.lastIndexOf(','); if(pos>=0) m_szPlainModes=szSupportedChannelModes.right(szSupportedChannelModes.length()+pos-1); m_szSupportedChannelModes = szSupportedChannelModes; m_bSupportsModesIe = (szSupportedChannelModes.contains('e') && szSupportedChannelModes.contains('I')); - QChar* aux=(QChar*)szSupportedChannelModes.ucs2(); + QChar* aux=(QChar*)szSupportedChannelModes.utf16(); while(aux->unicode()) { if(!m_szSupportedChannelModes.contains(*aux)) @@ -89,7 +89,7 @@ void KviIrcConnectionServerInfo::buildModePrefixTable() const QChar * cFlag = KviQString::nullTerminatedArray(m_szSupportedModeFlags); if(!cPrefix || !cFlag)return; // eh ? - m_uPrefixes=QMIN(m_szSupportedModePrefixes.length(),m_szSupportedModePrefixes.length()); + m_uPrefixes=qMin(m_szSupportedModePrefixes.length(),m_szSupportedModePrefixes.length()); m_pModePrefixTable=(kvi_u32_t*)kvi_malloc(sizeof(kvi_u32_t)*3*m_uPrefixes); unsigned short uPrefix,uFlag; @@ -189,11 +189,11 @@ kvi_u32_t KviIrcConnectionServerInfo::modeFlagFromModeChar(QChar c) void KviIrcConnectionServerInfo::setServerVersion(const QString & version) { if(m_pServInfo) delete m_pServInfo; - if(version.contains("unreal",false)) + if(version.contains("unreal",Qt::CaseInsensitive)) m_pServInfo = new KviUnrealIrcServerInfo(version); - else if(version.contains("bahamut",false)) + else if(version.contains("bahamut",Qt::CaseInsensitive)) m_pServInfo = new KviBahamutIrcServerInfo(version); - else if(version.contains("hyperion",false)) + else if(version.contains("hyperion",Qt::CaseInsensitive)) m_pServInfo = new KviHyperionIrcServerInfo(version); else m_pServInfo = new KviBasicIrcServerInfo(version); diff --git a/src/kvirc/kernel/kvi_ircconnectionuserinfo.cpp b/src/kvirc/kernel/kvi_ircconnectionuserinfo.cpp index 733c237a4..bc3a68eeb 100644 --- a/src/kvirc/kernel/kvi_ircconnectionuserinfo.cpp +++ b/src/kvirc/kernel/kvi_ircconnectionuserinfo.cpp @@ -45,7 +45,7 @@ bool KviIrcConnectionUserInfo::addUserMode(const QChar &m) bool KviIrcConnectionUserInfo::removeUserMode(const QChar &m) { - int idx = m_szUserMode.find(m,0); + int idx = m_szUserMode.indexOf(m,0); if(idx == -1)return false; m_szUserMode.replace(m,QString("")); return true; diff --git a/src/kvirc/kernel/kvi_ircsocket.cpp b/src/kvirc/kernel/kvi_ircsocket.cpp index c9fe0218a..41967ac2e 100644 --- a/src/kvirc/kernel/kvi_ircsocket.cpp +++ b/src/kvirc/kernel/kvi_ircsocket.cpp @@ -183,20 +183,22 @@ void KviIrcSocket::outputSSLError(const QString &szMsg) void KviIrcSocket::outputProxyMessage(const QString &szMsg) { - QStringList list=QStringList::split("\n",szMsg); + QStringList list=szMsg.isEmpty()?QStringList():szMsg.split("\n",QString::SkipEmptyParts); + for(QStringList::Iterator it = list.begin(); it != list.end(); ++it) { - QString szTemporary = (*it).stripWhiteSpace(); + QString szTemporary = (*it).trimmed(); m_pConsole->output(KVI_OUT_SOCKETMESSAGE,__tr2qs("[PROXY]: %Q"),&(szTemporary)); } } void KviIrcSocket::outputProxyError(const QString &szMsg) { - QStringList list=QStringList::split("\n",szMsg); + QStringList list=szMsg.isEmpty()?QStringList():szMsg.split("\n",QString::SkipEmptyParts); + for(QStringList::Iterator it = list.begin(); it != list.end(); ++it) { - QString szTemporary = (*it).stripWhiteSpace(); + QString szTemporary = (*it).trimmed(); m_pConsole->output(KVI_OUT_SOCKETERROR,__tr2qs("[PROXY ERROR]: %Q"),&(szTemporary)); } @@ -382,7 +384,9 @@ int KviIrcSocket::startConnection(KviIrcServer *srv,KviProxy * prx,const char * if(KVI_OPTION_UINT(KviOption_uintIrcSocketTimeout) < 5)KVI_OPTION_UINT(KviOption_uintIrcSocketTimeout) = 5; m_pTimeoutTimer = new QTimer(); QObject::connect(m_pTimeoutTimer,SIGNAL(timeout()),this,SLOT(connectionTimedOut())); - m_pTimeoutTimer->start(KVI_OPTION_UINT(KviOption_uintIrcSocketTimeout) * 1000,true); + m_pTimeoutTimer->setSingleShot(true); + m_pTimeoutTimer->setInterval(KVI_OPTION_UINT(KviOption_uintIrcSocketTimeout) * 1000); + m_pTimeoutTimer->start(); // and wait for connect setState(Connecting); @@ -696,7 +700,7 @@ void KviIrcSocket::proxyLoginV4() char *bufToSend = new char[iLen]; bufToSend[0]=(unsigned char)4; //Version 4 bufToSend[1]=(unsigned char)1; //Connect - Q_UINT16 port=(Q_UINT16)htons(m_pIrcServer->port()); + quint16 port=(quint16)htons(m_pIrcServer->port()); kvi_memmove((void *)(bufToSend+2),(void *)&port,2); struct in_addr ircInAddr; @@ -704,7 +708,7 @@ void KviIrcSocket::proxyLoginV4() if(!kvi_stringIpToBinaryIp(m_pIrcServer->ip().toUtf8().data(),&ircInAddr)) debug("SOCKET INTERNAL ERROR IN IPV4 (SOCKS4) ADDR CONVERSION"); - Q_UINT32 host=(Q_UINT32)ircInAddr.s_addr; + quint32 host=(quint32)ircInAddr.s_addr; kvi_memmove((void *)(bufToSend+4),(void *)&host,4); kvi_memmove((void *)(bufToSend+8),(void *)(szUserAndPass.ptr()),szUserAndPass.len()); // send it into hyperspace... @@ -908,7 +912,7 @@ void KviIrcSocket::proxySendTargetDataV5() kvi_memmove((void *)(bufToSend + 5), (void *)(m_pIrcServer->hostName().toUtf8().data()), m_pIrcServer->hostName().toUtf8().length()); - Q_UINT16 port = (Q_UINT16)htons(m_pIrcServer->port()); + quint16 port = (quint16)htons(m_pIrcServer->port()); kvi_memmove((void *)(bufToSend + 4 + 1 + m_pIrcServer->hostName().toUtf8().length()),(void *)&port,2); } else if(m_pIrcServer->isIpV6()) { #ifdef COMPILE_IPV6_SUPPORT @@ -916,16 +920,16 @@ void KviIrcSocket::proxySendTargetDataV5() if(!kvi_stringIpToBinaryIp_V6(m_pIrcServer->ip().toUtf8().data(),&ircInAddr))debug("SOCKET INTERNAL ERROR IN IPV6 ADDR CONVERSION"); kvi_memmove((void *)(bufToSend + 4),(void *)(&ircInAddr),4); - Q_UINT16 port = (Q_UINT16)htons(m_pIrcServer->port()); + quint16 port = (quint16)htons(m_pIrcServer->port()); kvi_memmove((void *)(bufToSend + 20),(void *)&port,2); #endif } else { struct in_addr ircInAddr; if(!kvi_stringIpToBinaryIp(m_pIrcServer->ip().toUtf8().data(),&ircInAddr))debug("SOCKET INTERNAL ERROR IN IPV4 ADDR CONVERSION"); - Q_UINT32 host = (Q_UINT32)ircInAddr.s_addr; + quint32 host = (quint32)ircInAddr.s_addr; kvi_memmove((void *)(bufToSend + 4),(void *)&host,4); - Q_UINT16 port = (Q_UINT16)htons(m_pIrcServer->port()); + quint16 port = (quint16)htons(m_pIrcServer->port()); kvi_memmove((void *)(bufToSend + 8),(void *)&port,2); } diff --git a/src/kvirc/kernel/kvi_ircurl.cpp b/src/kvirc/kernel/kvi_ircurl.cpp index 4b7c74bbc..47899042c 100644 --- a/src/kvirc/kernel/kvi_ircurl.cpp +++ b/src/kvirc/kernel/kvi_ircurl.cpp @@ -151,7 +151,7 @@ void KviIrcUrl::split(QString url, KviIrcUrlParts& result) result.iPort = 6667; result.iError=0; - int iProtoLen = url.find("://"); + int iProtoLen = url.indexOf("://"); if(iProtoLen!=-1) { if(KviQString::equalCIN(url,"irc",3)) { // OK, seems to be a valid proto; @@ -168,7 +168,7 @@ void KviIrcUrl::split(QString url, KviIrcUrlParts& result) //irc(???):// proto?? result.iError |= InvalidProtocol; } - iProtoLen = url.find("://"); + iProtoLen = url.indexOf("://"); url = url.right(url.length()-iProtoLen-3); } else { result.iError |= InvalidProtocol; @@ -176,13 +176,13 @@ void KviIrcUrl::split(QString url, KviIrcUrlParts& result) } //Ok, we understand a protocol.. Now we shuld find a server name:) int iTmp; - iTmp = url.find(':'); + iTmp = url.indexOf(':'); if(iTmp!=-1) { result.szHost = url.left(iTmp); url = url.right(url.length()-iTmp-1); // Accepted, now the time for the port:) bool bOk; - if( (iTmp = url.find('/')) != -1) { // any channels pending? + if( (iTmp = url.indexOf('/')) != -1) { // any channels pending? result.iPort = url.left(iTmp).toUInt(&bOk); if(!bOk) { result.iPort = 6667; @@ -197,7 +197,7 @@ void KviIrcUrl::split(QString url, KviIrcUrlParts& result) } url = ""; } - } else if( (iTmp = url.find('/')) != -1) { // have channels?? + } else if( (iTmp = url.indexOf('/')) != -1) { // have channels?? result.szHost = url.left(iTmp); url = url.right(url.length()-iTmp-1); } else { @@ -206,8 +206,7 @@ void KviIrcUrl::split(QString url, KviIrcUrlParts& result) } //and, finally, channels:D - - result.chanList = QStringList::split(',',url); + result.chanList = url.isEmpty()?QStringList():url.split(',',QString::SkipEmptyParts); } @@ -328,14 +327,14 @@ int KviIrcUrl::run(const QString& text,int contextSpec,KviConsole* pConsole) QString toPart; for(KviChannel * c = pConsole->connection()->channelList()->first();c;c = pConsole->connection()->channelList()->next()) { - tmp=c->name(); + tmp=c->objectName(); if(c->hasChannelKey()) { tmp.append("?"); tmp.append(c->channelKey()); } - if(!parts.chanList.remove(tmp)) + if(!parts.chanList.removeAll(tmp)) { - toPart.append(c->name()); + toPart.append(c->objectName()); toPart.append(","); } } diff --git a/src/kvirc/kernel/kvi_notifylist.cpp b/src/kvirc/kernel/kvi_notifylist.cpp index 2732f8df7..c4ccb6b59 100644 --- a/src/kvirc/kernel/kvi_notifylist.cpp +++ b/src/kvirc/kernel/kvi_notifylist.cpp @@ -117,8 +117,9 @@ // Basic NotifyListManager: this does completely nothing KviNotifyListManager::KviNotifyListManager(KviIrcConnection * pConnection) -: QObject(0,"notify_list_manager") +: QObject(0) { + setObjectName("notify_list_manager"); m_pConnection = pConnection; m_pConsole = pConnection->console(); } @@ -172,14 +173,18 @@ void KviNotifyListManager::notifyOnLine(const QString &nick,const QString &user, while(KviRegisteredUser * u = it.current()) { - if(QStringList::split(",",u->getProperty("notify")).findIndex(nick)!=-1) + QString prop=u->getProperty("notify"); + if (!prop.isEmpty()) { - QString szComment=u->getProperty("comment"); - if(!szComment.isEmpty()) - KviQString::sprintf(szMsg,"%Q (%Q), Group \"%Q\" is on IRC as (%Q)",&(u->name()),&szComment,&(u->group()),&szWho); - else - KviQString::sprintf(szMsg,"%Q, Group \"%Q\" is on IRC as (%Q)",&(u->name()),&(u->group()),&szWho); - break; + if(prop.split(",",QString::SkipEmptyParts).indexOf(nick)!=-1) + { + QString szComment=u->getProperty("comment"); + if(!szComment.isEmpty()) + KviQString::sprintf(szMsg,"%Q (%Q), Group \"%Q\" is on IRC as (%Q)",&(u->name()),&szComment,&(u->group()),&szWho); + else + KviQString::sprintf(szMsg,"%Q, Group \"%Q\" is on IRC as (%Q)",&(u->name()),&(u->group()),&szWho); + break; + } } ++it; } @@ -232,14 +237,18 @@ void KviNotifyListManager::notifyOffLine(const QString &nick,const QString &user while(KviRegisteredUser * u = it.current()) { - if(QStringList::split(",",u->getProperty("notify")).findIndex(nick)!=-1) + QString prop=u->getProperty("notify"); + if (!prop.isEmpty()) { - QString szComment=u->getProperty("comment"); - if(!szComment.isEmpty()) - KviQString::sprintf(szMsg,"%Q (%Q), Group \"%Q\" has left IRC as (%Q)",&(u->name()),&szComment,&(u->group()),&szWho); - else - KviQString::sprintf(szMsg,"%Q, Group \"%Q\" has left IRC as (%Q)",&(u->name()),&(u->group()),&szWho); - break; + if(prop.split(",",QString::SkipEmptyParts).indexOf(nick)!=-1) + { + QString szComment=u->getProperty("comment"); + if(!szComment.isEmpty()) + KviQString::sprintf(szMsg,"%Q (%Q), Group \"%Q\" has left IRC as (%Q)",&(u->name()),&szComment,&(u->group()),&szWho); + else + KviQString::sprintf(szMsg,"%Q, Group \"%Q\" has left IRC as (%Q)",&(u->name()),&(u->group()),&szWho); + break; + } } ++it; } @@ -383,10 +392,10 @@ void KviIsOnNotifyListManager::buildRegUserDict() QString notify; if(u->getProperty("notify",notify)) { - notify.stripWhiteSpace(); + notify.trimmed(); while(!notify.isEmpty()) { - int idx = notify.find(' '); + int idx = notify.indexOf(' '); if(idx > 0) { QString single = notify.left(idx); @@ -416,7 +425,9 @@ void KviIsOnNotifyListManager::delayedNotifySession() iTimeout = 15; KVI_OPTION_UINT(KviOption_uintNotifyListCheckTimeInSecs) = 15; } - m_pDelayedNotifyTimer->start(iTimeout * 1000,true); + m_pDelayedNotifyTimer->setInterval(iTimeout * 1000); + m_pDelayedNotifyTimer->setSingleShot(true); + m_pDelayedNotifyTimer->start(); } void KviIsOnNotifyListManager::newNotifySession() @@ -457,7 +468,9 @@ void KviIsOnNotifyListManager::delayedIsOnSession() iTimeout = 5; KVI_OPTION_UINT(KviOption_uintNotifyListIsOnDelayTimeInSecs) = 5; } - m_pDelayedIsOnTimer->start(iTimeout * 1000,true); + m_pDelayedIsOnTimer->setInterval(iTimeout * 1000); + m_pDelayedIsOnTimer->setSingleShot(true); + m_pDelayedIsOnTimer->start(); } void KviIsOnNotifyListManager::newIsOnSession() @@ -714,7 +727,9 @@ void KviIsOnNotifyListManager::delayedUserhostSession() iTimeout = 5; KVI_OPTION_UINT(KviOption_uintNotifyListUserhostDelayTimeInSecs) = 5; } - m_pDelayedUserhostTimer->start(iTimeout * 1000,true); + m_pDelayedUserhostTimer->setInterval(iTimeout * 1000); + m_pDelayedUserhostTimer->setSingleShot(true); + m_pDelayedUserhostTimer->start(); } void KviIsOnNotifyListManager::newUserhostSession() @@ -980,7 +995,7 @@ bool KviStupidNotifyListManager::handleIsOn(KviIrcMessage * msg) { QString nkd = m_pConnection->decodeText(nk.ptr()); QString nksp = " " + nkd; - m_szLastIsOnMsg.replace(nksp,"",false); + m_szLastIsOnMsg.replace(nksp,"",Qt::CaseInsensitive); if(!(m_pConsole->notifyListView()->findEntry(nkd))) { // not yet notified @@ -989,7 +1004,7 @@ bool KviStupidNotifyListManager::handleIsOn(KviIrcMessage * msg) } } // ok...check the users that have left irc now... - QStringList sl = QStringList::split(' ',m_szLastIsOnMsg); + QStringList sl = m_szLastIsOnMsg.isEmpty()?QStringList():m_szLastIsOnMsg.split(' ',QString::SkipEmptyParts); for(QStringList::Iterator it = sl.begin();it != sl.end();++it) { @@ -1093,8 +1108,8 @@ void KviWatchNotifyListManager::buildRegUserDict() QString notify; if(u->getProperty("notify",notify)) { - notify.stripWhiteSpace(); - QStringList sl = QStringList::split(' ',notify); + notify.trimmed(); + QStringList sl = notify.split(' ',QString::SkipEmptyParts); for(QStringList::Iterator it = sl.begin();it != sl.end();++it) { m_pRegUserDict->replace(*it,new QString(u->name())); @@ -1116,7 +1131,7 @@ void KviWatchNotifyListManager::start() while(it.current()) { QString nk = it.currentKey(); - if(nk.find('*') == -1) + if(nk.indexOf('*') == -1) { if((watchStr.length() + nk.length() + 2) > 501) { diff --git a/src/kvirc/kernel/kvi_options.cpp b/src/kvirc/kernel/kvi_options.cpp index 2a021cea1..8163793be 100644 --- a/src/kvirc/kernel/kvi_options.cpp +++ b/src/kvirc/kernel/kvi_options.cpp @@ -1153,7 +1153,7 @@ namespace KviTheme #undef READ_OPTIONS #undef READ_ALL_OPTIONS - KVI_OPTION_STRING(KviOption_stringIconThemeSubdir).stripWhiteSpace(); + KVI_OPTION_STRING(KviOption_stringIconThemeSubdir).trimmed(); // the pixmap options need special processing @@ -1164,7 +1164,7 @@ namespace KviTheme if(cfg.hasKey(g_pixmapOptionsTable[i].name)) { QString szVal = cfg.readQStringEntry(g_pixmapOptionsTable[i].name,""); - szVal.stripWhiteSpace(); + szVal.trimmed(); QString szBuffer; if(!szVal.isEmpty()) { @@ -1344,7 +1344,7 @@ bool KviApp::setOptionValue(const QString &optName,const QString &value) { // We lookup the image path (so we allow also relative paths for this option type) QString szVal = value; - szVal.stripWhiteSpace(); + szVal.trimmed(); QString szBuffer; if(!szVal.isEmpty()) { diff --git a/src/kvirc/kernel/kvi_theme.cpp b/src/kvirc/kernel/kvi_theme.cpp index 750430ec7..05535d6b1 100644 --- a/src/kvirc/kernel/kvi_theme.cpp +++ b/src/kvirc/kernel/kvi_theme.cpp @@ -171,10 +171,9 @@ const QPixmap & KviThemeInfo::smallScreenshot() if(pix.width() > 300 || pix.height() > 225) { - QImage sbri = pix.convertToImage(); - pix.convertFromImage(sbri.smoothScale(300,225,QIMAGE_SCALE_MIN)); + QImage sbri = pix.toImage(); + pix.fromImage(sbri.scaled(300,225,QIMAGE_SCALE_MIN,Qt::SmoothTransformation)); } - pix.save(szFileName,"PNG"); m_pixScreenshotSmall = pix; @@ -205,8 +204,8 @@ const QPixmap & KviThemeInfo::mediumScreenshot() if(pix.width() > 600 || pix.height() > 450) { - QImage sbri = pix.convertToImage(); - pix.convertFromImage(sbri.smoothScale(600,450,QIMAGE_SCALE_MIN)); + QImage sbri = pix.toImage(); + pix.fromImage(sbri.scaled(640,450,QIMAGE_SCALE_MIN,Qt::SmoothTransformation)); } pix.save(szFileName,"PNG"); @@ -264,9 +263,9 @@ namespace KviTheme } if(pix.width() > 600 || pix.height() > 450) - out.convertFromImage(pix.smoothScale(600,450,QIMAGE_SCALE_MIN)); + out.fromImage(pix.scaled(640,450,QIMAGE_SCALE_MIN,Qt::SmoothTransformation)); else - out.convertFromImage(pix); + out.fromImage(pix); szScreenshotFileName = options.absoluteDirectory(); KviQString::ensureLastCharIs(szScreenshotFileName,KVI_PATH_SEPARATOR_CHAR); @@ -278,9 +277,9 @@ namespace KviTheme } if(pix.width() > 300 || pix.height() > 225) - out.convertFromImage(pix.smoothScale(300,225,QIMAGE_SCALE_MIN)); + out.fromImage(pix.scaled(300,225,QIMAGE_SCALE_MIN,Qt::SmoothTransformation)); else - out.convertFromImage(pix); + out.fromImage(pix); szScreenshotFileName = options.absoluteDirectory(); KviQString::ensureLastCharIs(szScreenshotFileName,KVI_PATH_SEPARATOR_CHAR); diff --git a/src/kvirc/sparser/kvi_antispam.cpp b/src/kvirc/sparser/kvi_antispam.cpp index e8426fe13..289f8504a 100644 --- a/src/kvirc/sparser/kvi_antispam.cpp +++ b/src/kvirc/sparser/kvi_antispam.cpp @@ -108,7 +108,7 @@ bool kvi_mayBeSpam(KviStr * msg,KviStr &spamWord) { // FIXME : This is SLOOOOOOOOW (QString -> ascii translation!!) - const char * aux = (*it).ascii(); + const char * aux = (*it).toAscii(); if(aux) { if(msg->findFirstIdx(aux,false) != -1) diff --git a/src/kvirc/ui/kvi_actiondrawer.cpp b/src/kvirc/ui/kvi_actiondrawer.cpp index c40b638c4..ed1dd728b 100644 --- a/src/kvirc/ui/kvi_actiondrawer.cpp +++ b/src/kvirc/ui/kvi_actiondrawer.cpp @@ -60,7 +60,7 @@ KviActionDrawerPageListWidgetItem::KviActionDrawerPageListWidgetItem(KviTalListW if(a->isKviUserActionNeverOverrideThis()) t += " <font color=\"#a0a0a0\">[" + __tr2qs("Script") + "]</font>"; t += "<br><font size=\"-1\">" + a->description()+ "</font>"; - m_szKey = a->visibleName().upper(); + m_szKey = a->visibleName().toUpper(); QPixmap * p = a->bigIcon(); setIcon(*p); @@ -231,6 +231,6 @@ void KviActionDrawer::fill() if(p) { int iii = indexOf(p); - if(iii >= 0)setCurrentPage(iii); + if(iii >= 0)setCurrentIndex(iii); } } diff --git a/src/kvirc/ui/kvi_cryptcontroller.cpp b/src/kvirc/ui/kvi_cryptcontroller.cpp index 15bde185b..7eede6d71 100644 --- a/src/kvirc/ui/kvi_cryptcontroller.cpp +++ b/src/kvirc/ui/kvi_cryptcontroller.cpp @@ -84,31 +84,38 @@ l->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_LOCKED))); g->addWidget(l,0,0); l = new QLabel(__tr2qs("Cryptography/text transformation"),this); - g->addMultiCellWidget(l,0,0,1,3); + g->addWidget(l,0,1,1,3); +// g->addMultiCellWidget(l,0,0,1,3); QFrame * frm = new QFrame(this); frm->setFrameStyle(QFrame::HLine | QFrame::Sunken); - g->addMultiCellWidget(frm,1,1,0,3); + g->addWidget(frm,1,0,1,4); +// g->addMultiCellWidget(frm,1,1,0,3); m_pEnableCheck = new KviStyledCheckBox(__tr2qs("Use the crypt engine"),this); - g->addMultiCellWidget(m_pEnableCheck,2,2,0,3); + g->addWidget(m_pEnableCheck,2,0,1,4); + // g->addMultiCellWidget(m_pEnableCheck,2,2,0,3); connect(m_pEnableCheck,SIGNAL(toggled(bool)),this,SLOT(enableCheckToggled(bool))); m_pListBox = new KviTalListBox(this); connect(m_pListBox,SIGNAL(highlighted(KviTalListBoxItem *)),this,SLOT(engineHighlighted(KviTalListBoxItem *))); - g->addMultiCellWidget(m_pListBox,3,8,0,0); + g->addWidget(m_pListBox,3,0,6,1); + // g->addMultiCellWidget(m_pListBox,3,8,0,0); m_pDescriptionLabel = new QLabel(this); m_pDescriptionLabel->setFrameStyle(QFrame::Sunken | QFrame::StyledPanel); m_pDescriptionLabel->setAlignment(Qt::AlignTop | Qt::AlignLeft); - g->addMultiCellWidget(m_pDescriptionLabel,3,3,1,3); + g->addWidget(m_pDescriptionLabel,3,1,1,3); + // g->addMultiCellWidget(m_pDescriptionLabel,3,3,1,3); m_pAuthorLabel = new QLabel(this); m_pAuthorLabel->setFrameStyle(QFrame::Sunken | QFrame::StyledPanel); - g->addMultiCellWidget(m_pAuthorLabel,4,4,1,3); + g->addWidget(m_pAuthorLabel,4,1,1,3); + //g->addMultiCellWidget(m_pAuthorLabel,4,4,1,3); m_pEnableEncrypt = new KviStyledCheckBox(__tr2qs("Enable encryption"),this); - g->addMultiCellWidget(m_pEnableEncrypt,5,5,1,3); + g->addWidget(m_pEnableEncrypt,5,1,1,3); + // g->addMultiCellWidget(m_pEnableEncrypt,5,5,1,3); m_pEncryptKeyLabel = new QLabel(__tr2qs("Encrypt key:"),this); g->addWidget(m_pEncryptKeyLabel,6,1); @@ -120,7 +127,8 @@ g->addWidget(m_pEncryptHexKeyCheck,6,3); m_pEnableDecrypt = new KviStyledCheckBox(__tr2qs("Enable decryption"),this); - g->addMultiCellWidget(m_pEnableDecrypt,7,7,1,3); + g->addWidget(m_pEnableDecrypt,7,1,1,3); + // g->addMultiCellWidget(m_pEnableDecrypt,7,7,1,3); m_pDecryptKeyLabel = new QLabel(__tr2qs("Decrypt key:"),this); g->addWidget(m_pDecryptKeyLabel,8,1); @@ -132,7 +140,8 @@ g->addWidget(m_pDecryptHexKeyCheck,8,3); m_pOkButton = new QPushButton(__tr2qs("OK"),this); - g->addMultiCellWidget(m_pOkButton,9,9,0,3); + g->addWidget(m_pOkButton,9,0,1,4); + // g->addMultiCellWidget(m_pOkButton,9,9,0,3); connect(m_pOkButton,SIGNAL(clicked()),this,SLOT(okClicked())); g->setRowStretch(3,1); diff --git a/src/kvirc/ui/kvi_ctcppagedialog.cpp b/src/kvirc/ui/kvi_ctcppagedialog.cpp index 999f8f905..7c8b7138d 100644 --- a/src/kvirc/ui/kvi_ctcppagedialog.cpp +++ b/src/kvirc/ui/kvi_ctcppagedialog.cpp @@ -45,7 +45,7 @@ KviCtcpPageDialog::KviCtcpPageDialog() m_pWidgetStack = new KviTalWidgetStack(this); g->addWidget(m_pWidgetStack,0,0); m_pTabBar = new QTabBar(this); - m_pTabBar->setShape(QTabBar::TriangularBelow); + m_pTabBar->setShape(QTabBar::TriangularSouth); connect(m_pTabBar,SIGNAL(selected(int)),this,SLOT(tabSelected(int))); g->addWidget(m_pTabBar,1,0); @@ -59,7 +59,7 @@ KviCtcpPageDialog::KviCtcpPageDialog() setMinimumSize(300,200); setMaximumSize(780,580); - setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CTCPREQUESTREPLIED))); + setWindowIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CTCPREQUESTREPLIED))); setWindowTitle(__tr2qs("CTCP Page - KVIrc")); } @@ -111,7 +111,7 @@ void KviCtcpPageDialog::addPage(const QString &szNick,const QString &szUser,cons l->setText(tmp); m_pWidgetStack->addWidget(l); m_pWidgetStack->widget(id)->raise(); - m_pTabBar->setCurrentTab(id); + m_pTabBar->setCurrentIndex(id); } void KviCtcpPageDialog::closeEvent(QCloseEvent *) diff --git a/src/modules/raweditor/raweditor.cpp b/src/modules/raweditor/raweditor.cpp index ffdcec14d..52085ac89 100644 --- a/src/modules/raweditor/raweditor.cpp +++ b/src/modules/raweditor/raweditor.cpp @@ -20,7 +20,7 @@ // Inc. ,59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // #include "raweditor.h" - +#include "kvi_iconmanager.h" #include "kvi_iconmanager.h" #include "kvi_options.h" #include "kvi_locale.h" @@ -48,47 +48,63 @@ extern KviRawEditorWindow * g_pRawEditorWindow; -KviRawListViewItem::KviRawListViewItem(KviTalListView *par,int idx) -: KviTalListViewItem(par) +KviRawTreeWidgetItem::KviRawTreeWidgetItem(KviTalTreeWidget *par,int idx,bool bEnabled) +: KviTalTreeWidgetItem(par) { m_iIdx = idx; m_szName.setNum(idx); if(idx < 100)m_szName.prepend('0'); if(idx < 10)m_szName.prepend('0'); + setText(0,m_szName); + setEnabled(bEnabled); }; - -const QPixmap * KviRawListViewItem::pixmap(int col) const +/* +const QPixmap * KviRawTreeWidgetItem::pixmap(int col) const { return g_pIconManager->getSmallIcon(firstChild() ? KVI_SMALLICON_RAWEVENT : KVI_SMALLICON_RAWEVENTNOHANDLERS); } -const QPixmap * KviRawHandlerListViewItem::pixmap(int col) const +const QPixmap * KviRawHandlerTreeWidgetItem::pixmap(int col) const { return g_pIconManager->getSmallIcon(m_bEnabled ? KVI_SMALLICON_HANDLER : KVI_SMALLICON_HANDLERDISABLED); } - +*/ KviRawEditor::KviRawEditor(QWidget * par) -: QWidget(par,"raw_event_editor") +: QWidget(par) { + setObjectName("raw_event_editor"); QGridLayout * l = new QGridLayout(this); - QSplitter * spl = new QSplitter(Qt::Horizontal,this,"raweditorv"); + QSplitter * spl = new QSplitter(Qt::Horizontal,this); + spl->setObjectName("raweditor_splitter"); spl->setOpaqueResize(false); l->addWidget(spl,0,0); KviTalVBox * boxi = new KviTalVBox(spl); - m_pListView = new KviTalListView(boxi); - m_pListView->addColumn(__tr2qs("Raw Event")); - m_pListView->setMultiSelection(false); - m_pListView->setShowSortIndicator(true); - m_pListView->setRootIsDecorated(true); + boxi->setMaximumWidth(200); + m_pTreeWidget = new KviRawTreeWidget(boxi); +
+ + + m_pTreeWidget->setColumnCount(1); + m_pTreeWidget->setHeaderLabel(__tr2qs("Raw Event")); + +// m_pTreeWidget->setMultiSelection(false); + m_pTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection); +// m_pTreeWidget->setShowSortIndicator(true); + m_pTreeWidget->setRootIsDecorated(true); + m_pContextPopup = new KviTalPopupMenu(this); + m_pTreeWidget->setContextMenuPolicy(Qt::CustomContextMenu); + connect(m_pTreeWidget,SIGNAL(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *)),this,SLOT(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *))); + + connect(m_pTreeWidget,SIGNAL(customContextMenuRequested(const QPoint &)),this,SLOT(customContextMenuRequested(const QPoint &))); QPushButton * pb = new QPushButton(__tr2qs("&Export All To..."),boxi); connect(pb,SIGNAL(clicked()),this,SLOT(exportAllEvents())); KviTalVBox * box = new KviTalVBox(spl); m_pNameEditor = new QLineEdit(box); - QToolTip::add(m_pNameEditor,__tr2qs("Edit the raw event handler name.")); + m_pNameEditor->setToolTip(__tr2qs("Edit the raw event handler name.")); m_pEditor = KviScriptEditor::createInstance(box); m_bOneTimeSetupDone = false; @@ -105,44 +121,42 @@ void KviRawEditor::oneTimeSetup() if(m_bOneTimeSetupDone)return; m_bOneTimeSetupDone = true; - KviRawListViewItem * it; - KviRawHandlerListViewItem * ch; + KviRawTreeWidgetItem * it; + KviRawHandlerTreeWidgetItem * ch; for(unsigned int i = 0;i < 999;i++) { KviPointerList<KviKvsEventHandler> * l = KviKvsEventManager::instance()->rawHandlers(i); if(l) { - it = new KviRawListViewItem(m_pListView,i); + it = new KviRawTreeWidgetItem(m_pTreeWidget,i,true); for(KviKvsEventHandler * s = l->first();s;s = l->next()) { if(s->type() == KviKvsEventHandler::Script) { - ch = new KviRawHandlerListViewItem(it,((KviKvsScriptEventHandler *)s)->name(), + ch = new KviRawHandlerTreeWidgetItem(it,((KviKvsScriptEventHandler *)s)->name(), ((KviKvsScriptEventHandler *)s)->code(),((KviKvsScriptEventHandler *)s)->isEnabled()); } } - it->setOpen(true); + it->setExpanded(true); } } - m_pContextPopup = new KviTalPopupMenu(this); - - connect(m_pListView,SIGNAL(selectionChanged(KviTalListViewItem *)),this,SLOT(selectionChanged(KviTalListViewItem *))); - connect(m_pListView,SIGNAL(rightButtonPressed(KviTalListViewItem *,const QPoint &,int)), - this,SLOT(itemPressed(KviTalListViewItem *,const QPoint &,int))); } -void KviRawEditor::itemPressed(KviTalListViewItem *it,const QPoint &pnt,int col) -{ + +void KviRawEditor::customContextMenuRequested(const QPoint &pos) +{ + KviTalTreeWidgetItem *it; + it=(KviTalTreeWidgetItem *)m_pTreeWidget->itemAt(pos); __range_valid(m_bOneTimeSetupDone); m_pContextPopup->clear(); if(it) { if(it->parent()) { - if(!(((KviRawHandlerListViewItem *)it)->m_bEnabled)) + if(!(((KviRawHandlerTreeWidgetItem *)it)->m_bEnabled)) m_pContextPopup->insertItem( *(g_pIconManager->getSmallIcon(KVI_SMALLICON_HANDLER)), __tr2qs("&Enable Handler"),this,SLOT(toggleCurrentHandlerEnabled())); @@ -173,10 +187,10 @@ void KviRawEditor::itemPressed(KviTalListViewItem *it,const QPoint &pnt,int col) __tr2qs("&Add Raw Event..."), this,SLOT(addRaw())); - m_pContextPopup->popup(pnt); + m_pContextPopup->popup(mapToGlobal(pos)); } -void KviRawEditor::getUniqueHandlerName(KviRawListViewItem *it,QString &buffer) +void KviRawEditor::getUniqueHandlerName(KviRawTreeWidgetItem *it,QString &buffer) { __range_valid(m_bOneTimeSetupDone); @@ -190,8 +204,9 @@ void KviRawEditor::getUniqueHandlerName(KviRawListViewItem *it,QString &buffer) { bFound = false; - for(KviRawHandlerListViewItem * ch = (KviRawHandlerListViewItem *)(it->firstChild());ch;ch = (KviRawHandlerListViewItem *)ch->nextSibling()) + for (int i=0;i<it->childCount();i++) { + KviRawHandlerTreeWidgetItem * ch =(KviRawHandlerTreeWidgetItem *) it->child(i); if(KviQString::equalCI(newName,ch->m_szName)) { bFound = true; @@ -210,22 +225,23 @@ void KviRawEditor::addRaw() { bool bOk = false; - int iIdx = QInputDialog::getInteger(__tr2qs("New Raw Event"),__tr2qs("Enter the numeric code of the message (0-999)"),0,0,999,1,&bOk,this); + int iIdx = QInputDialog::getInteger(this,__tr2qs("New Raw Event"),__tr2qs("Enter the numeric code of the message (0-999)"),0,0,999,1,&bOk); if(!bOk)return; - KviRawListViewItem * it; - for(it = (KviRawListViewItem *)m_pListView->firstChild();it;it = (KviRawListViewItem *)it->nextSibling()) + KviRawTreeWidgetItem * it; + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if(it->m_iIdx == iIdx) + it=(KviRawTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); + if(((KviRawTreeWidgetItem *)it)->m_iIdx == iIdx) { - m_pListView->setSelected(it,true); + it->setSelected(true); goto add_handler; } } - it = new KviRawListViewItem(m_pListView,iIdx); - m_pListView->setSelected(it,true); + it = new KviRawTreeWidgetItem(m_pTreeWidget,iIdx,true); + it->setSelected(true); add_handler: addHandlerForCurrentRaw(); @@ -236,16 +252,16 @@ void KviRawEditor::addHandlerForCurrentRaw() { __range_valid(m_pOneTimeSetupDone); - KviTalListViewItem * it = m_pListView->selectedItem(); + KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *) m_pTreeWidget->currentItem(); if(it) { if(it->parent() == 0) { QString buffer = __tr2qs("default"); - getUniqueHandlerName((KviRawListViewItem *)it,buffer); - KviTalListViewItem * ch = new KviRawHandlerListViewItem(it,buffer,"",true); - it->setOpen(true); - m_pListView->setSelected(ch,true); + getUniqueHandlerName((KviRawTreeWidgetItem *)it,buffer); + KviTalTreeWidgetItem * ch = new KviRawHandlerTreeWidgetItem(it,buffer,"",true); + it->setExpanded(true); + ch->setSelected(true); } } } @@ -255,11 +271,13 @@ void KviRawEditor::removeCurrentHandler() __range_valid(m_pOneTimeSetupDone); if(m_pLastEditedItem) { - KviTalListViewItem * it = m_pLastEditedItem; + KviTalTreeWidgetItem * it = m_pLastEditedItem; + KviRawTreeWidgetItem * parent=(KviRawTreeWidgetItem *)it->parent(); m_pLastEditedItem = 0; delete it; m_pEditor->setEnabled(false); m_pNameEditor->setEnabled(false); + if (!parent->childCount()) parent->setEnabled(false); } } @@ -269,8 +287,8 @@ void KviRawEditor::toggleCurrentHandlerEnabled() if(m_pLastEditedItem) { m_pLastEditedItem->m_bEnabled = !(m_pLastEditedItem->m_bEnabled); - m_pListView->repaintItem(m_pLastEditedItem); - selectionChanged(m_pLastEditedItem); + m_pLastEditedItem->setEnabled(m_pLastEditedItem->m_bEnabled); + currentItemChanged(m_pLastEditedItem,m_pLastEditedItem); } } @@ -280,23 +298,28 @@ void KviRawEditor::commit() saveLastEditedItem(); KviKvsEventManager::instance()->removeAllScriptRawHandlers(); - for(KviTalListViewItem * it = m_pListView->firstChild();it;it = it->nextSibling()) + KviTalTreeWidgetItem * it; + for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if(it->firstChild()) + it=(KviTalTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); + if(it->childCount()) { QString szContext; - for(KviTalListViewItem * ch = it->firstChild();ch;ch = ch->nextSibling()) + KviTalTreeWidgetItem * ch; + for (int j=0;j<it->childCount();j++) { - - KviQString::sprintf(szContext,"RawEvent%d::%Q",&(((KviRawListViewItem *)it)->m_iIdx),&(((KviRawHandlerListViewItem *)ch)->m_szName)); + ch=(KviTalTreeWidgetItem *)it->child(j); + debug("Commit handler %s",((KviRawHandlerTreeWidgetItem *)ch)->m_szBuffer.toUtf8().data()); + //int a=(KviRawTreeWidgetItem *)it)->m_iIdx; + KviQString::sprintf(szContext,"RawEvent%d::%Q",&(((KviRawTreeWidgetItem *)it)->m_iIdx),&(((KviRawHandlerTreeWidgetItem *)ch)->m_szName)); KviKvsScriptEventHandler * s = new KviKvsScriptEventHandler( - ((KviRawHandlerListViewItem *)ch)->m_szName, + ((KviRawHandlerTreeWidgetItem *)ch)->m_szName, szContext, - ((KviRawHandlerListViewItem *)ch)->m_szBuffer, - ((KviRawHandlerListViewItem *)ch)->m_bEnabled + ((KviRawHandlerTreeWidgetItem *)ch)->m_szBuffer, + ((KviRawHandlerTreeWidgetItem *)ch)->m_bEnabled ); - KviKvsEventManager::instance()->addRawHandler(((KviRawListViewItem *)it)->m_iIdx,s); + KviKvsEventManager::instance()->addRawHandler(((KviRawTreeWidgetItem *)it)->m_iIdx,s); } } } @@ -310,9 +333,12 @@ void KviRawEditor::saveLastEditedItem() if(!m_pLastEditedItem)return; QString buffer = m_pNameEditor->text(); + debug("Check lineedit name %s and internal %s",buffer.toUtf8().data(),m_pLastEditedItem->m_szName.toUtf8().data()); if(!KviQString::equalCI(buffer,m_pLastEditedItem->m_szName)) { - getUniqueHandlerName((KviRawListViewItem *)(m_pLastEditedItem->parent()),buffer); + + getUniqueHandlerName((KviRawTreeWidgetItem *)(m_pLastEditedItem->parent()),buffer); + debu ("Change name % } m_pLastEditedItem->m_szName = buffer; @@ -322,17 +348,17 @@ void KviRawEditor::saveLastEditedItem() m_pLastEditedItem->m_szBuffer = tmp; } -void KviRawEditor::selectionChanged(KviTalListViewItem * it) +void KviRawEditor::currentItemChanged(QTreeWidgetItem * it,QTreeWidgetItem *) { __range_valid(m_bOneTimeSetupDone); saveLastEditedItem(); if(it->parent()) { - m_pLastEditedItem = (KviRawHandlerListViewItem *)it; + m_pLastEditedItem = (KviRawHandlerTreeWidgetItem *)it; m_pNameEditor->setEnabled(true); m_pNameEditor->setText(it->text(0)); m_pEditor->setEnabled(true); - m_pEditor->setText(((KviRawHandlerListViewItem *)it)->m_szBuffer); + m_pEditor->setText(((KviRawHandlerTreeWidgetItem *)it)->m_szBuffer); } else { m_pLastEditedItem = 0; m_pNameEditor->setEnabled(false); @@ -347,7 +373,7 @@ void KviRawEditor::showEvent(QShowEvent *e) QWidget::showEvent(e); } -void KviRawEditor::getExportEventBuffer(QString &buffer,KviRawHandlerListViewItem * it) +void KviRawEditor::getExportEventBuffer(QString &buffer,KviRawHandlerTreeWidgetItem * it) { if(!it->parent())return; @@ -356,7 +382,7 @@ void KviRawEditor::getExportEventBuffer(QString &buffer,KviRawHandlerListViewIte KviCommandFormatter::blockFromBuffer(szBuf); buffer = "event("; - buffer += ((KviRawListViewItem *)(it->parent()))->m_szName; + buffer += ((KviRawTreeWidgetItem *)(it->parent()))->m_szName; buffer += ","; buffer += it->m_szName; buffer += ")\n"; @@ -367,7 +393,7 @@ void KviRawEditor::getExportEventBuffer(QString &buffer,KviRawHandlerListViewIte { buffer += "\n"; buffer += "eventctl -d "; - buffer += ((KviRawListViewItem *)(it->parent()))->m_szName; + buffer += ((KviRawTreeWidgetItem *)(it->parent()))->m_szName; buffer += " "; buffer += it->m_szName; } @@ -379,10 +405,10 @@ void KviRawEditor::exportCurrentHandler() saveLastEditedItem(); if(!m_pLastEditedItem)return; - QString szName = QDir::homeDirPath(); + QString szName = QDir::homePath(); if(!szName.endsWith(QString(KVI_PATH_SEPARATOR)))szName += KVI_PATH_SEPARATOR; szName += "raw"; - szName += ((KviRawListViewItem *)(m_pLastEditedItem->parent()))->m_szName; + szName += ((KviRawTreeWidgetItem *)(m_pLastEditedItem->parent()))->m_szName; szName += "."; szName += m_pLastEditedItem->m_szName; szName += ".kvs"; @@ -404,25 +430,29 @@ void KviRawEditor::exportAllEvents() { saveLastEditedItem(); - KviRawListViewItem * it = (KviRawListViewItem *)m_pListView->firstChild(); + KviRawTreeWidgetItem * it;// = (KviRawTreeWidgetItem *)m_pTreeWidget->firstChild(); QString out; - while(it) + //while(it) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - KviRawHandlerListViewItem * item = (KviRawHandlerListViewItem *)it->firstChild(); - while(item) + it=(KviRawTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); + KviRawHandlerTreeWidgetItem * item;// = (KviRawHandlerTreeWidgetItem *)it->firstChild(); + //while(item) + for (int j=0;j<it->childCount();j++) { QString tmp; + item=(KviRawHandlerTreeWidgetItem *)it->child(i); getExportEventBuffer(tmp,item); out += tmp; out += "\n"; - item = (KviRawHandlerListViewItem *)item->nextSibling(); + //item = (KviRawHandlerTreeWidgetItem *)item->nextSibling(); } - it = (KviRawListViewItem *)it->nextSibling(); + //it = (KviRawTreeWidgetItem *)it->nextSibling(); } - QString szName = QDir::homeDirPath(); + QString szName = QDir::homePath(); if(!szName.endsWith(QString(KVI_PATH_SEPARATOR)))szName += KVI_PATH_SEPARATOR; szName += "rawevents.kvs"; @@ -462,7 +492,7 @@ KviRawEditorWindow::KviRawEditorWindow(KviFrame * lpFrm) btn->setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_DISCARD))); g->addWidget(btn,0,3); - g->setColStretch(0,1); + g->setColumnStretch(0,1); } KviRawEditorWindow::~KviRawEditorWindow() diff --git a/src/modules/raweditor/raweditor.h b/src/modules/raweditor/raweditor.h index 6d1a20472..4920fe6c4 100644 --- a/src/modules/raweditor/raweditor.h +++ b/src/modules/raweditor/raweditor.h @@ -24,39 +24,63 @@ #include "kvi_window.h" #include "kvi_qstring.h" -#include "kvi_tal_listview.h" - +#include "kvi_tal_treewidget.h" +#include "kvi_iconmanager.h" #include <QWidget> #include <QLineEdit> class KviScriptEditor; class KviTalPopupMenu; -class KviRawListViewItem : public KviTalListViewItem +class KviRawTreeWidget : public KviTalTreeWidget +{ + public: + KviRawTreeWidget(QWidget *par) + : KviTalTreeWidget(par){}; + void updateItem(KviTalTreeWidgetItem *item) + { + update(indexFromItem(item,0)); + }; + ~KviRawTreeWidget() {}; +}; + +class KviRawTreeWidgetItem : public KviTalTreeWidgetItem { public: int m_iIdx; QString m_szName; public: - KviRawListViewItem(KviTalListView * par,int idx); - ~KviRawListViewItem() {}; + KviRawTreeWidgetItem(KviTalTreeWidget * par,int idx,bool bEnabled); + ~KviRawTreeWidgetItem() {}; public: + void setEnabled(bool bEnabled) + { + if (bEnabled) setIcon(0,QIcon(*g_pIconManager->getSmallIcon(KVI_SMALLICON_RAWEVENT))); + else setIcon(0,QIcon(*g_pIconManager->getSmallIcon(KVI_SMALLICON_RAWEVENTNOHANDLERS))); + ((KviRawTreeWidget*)treeWidget())->updateItem(this); + }; virtual QString text(int col) const { return m_szName; }; - virtual const QPixmap * pixmap(int col) const; }; -class KviRawHandlerListViewItem : public KviTalListViewItem +class KviRawHandlerTreeWidgetItem : public KviTalTreeWidgetItem { public: - KviRawHandlerListViewItem(KviTalListViewItem * par,const QString & name,const QString & buffer,bool bEnabled) - : KviTalListViewItem(par), m_szName(name) , m_szBuffer(buffer) , m_bEnabled(bEnabled) {}; - ~KviRawHandlerListViewItem() {}; + KviRawHandlerTreeWidgetItem(KviTalTreeWidgetItem * par,const QString & name,const QString & buffer,bool bEnabled) + : KviTalTreeWidgetItem(par,name), m_szName(name) , m_szBuffer(buffer) , m_bEnabled(bEnabled) + { + setEnabled(bEnabled); + }; + ~KviRawHandlerTreeWidgetItem() {}; public: + void setEnabled(bool bEnabled) + { + if (bEnabled) setIcon(0,QIcon(*g_pIconManager->getSmallIcon(KVI_SMALLICON_HANDLER))); + else setIcon(0,QIcon(*g_pIconManager->getSmallIcon(KVI_SMALLICON_HANDLERDISABLED))); + ((KviRawTreeWidget*)treeWidget())->updateItem(this); + }; QString m_szName; QString m_szBuffer; bool m_bEnabled; - virtual QString text(int col) const { return m_szName; }; - virtual const QPixmap * pixmap(int col) const; }; class KviRawEditor : public QWidget @@ -67,19 +91,19 @@ public: ~KviRawEditor(); public: KviScriptEditor * m_pEditor; - KviTalListView * m_pListView; + KviRawTreeWidget * m_pTreeWidget; QLineEdit * m_pNameEditor; KviTalPopupMenu * m_pContextPopup; - KviRawHandlerListViewItem * m_pLastEditedItem; + KviRawHandlerTreeWidgetItem * m_pLastEditedItem; bool m_bOneTimeSetupDone; public: void commit(); void saveLastEditedItem(); - void getUniqueHandlerName(KviRawListViewItem *it,QString &buffer); - void getExportEventBuffer(QString &szBuffer,KviRawHandlerListViewItem * it); + void getUniqueHandlerName(KviRawTreeWidgetItem *it,QString &buffer); + void getExportEventBuffer(QString &szBuffer,KviRawHandlerTreeWidgetItem * it); protected slots: - void selectionChanged(KviTalListViewItem *it); - void itemPressed(KviTalListViewItem *it,const QPoint &pnt,int col); + void currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem *); + void customContextMenuRequested(const QPoint &pnt); void toggleCurrentHandlerEnabled(); void removeCurrentHandler(); void addHandlerForCurrentRaw(); diff --git a/src/modules/raweditor/raweditor_QT4_vc05.vcproj b/src/modules/raweditor/raweditor_QT4_vc05.vcproj index 78dd4b67c..9aaf5df9a 100644 --- a/src/modules/raweditor/raweditor_QT4_vc05.vcproj +++ b/src/modules/raweditor/raweditor_QT4_vc05.vcproj @@ -42,7 +42,7 @@ Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""$(ProjectDir)\..\..\kvirc\ui";"$(ProjectDir)\..\..\kvilib\core";"$(ProjectDir)\..\..\kvirc\module";"$(ProjectDir)\..\..\kvilib\config";"$(QTDIR)\include";"$(ProjectDir)\..\..\kvilib\system";"$(ProjectDir)\..\..\kvirc\uparser";"$(ProjectDir)\..\..\kvirc\sparser";"$(ProjectDir)\..\..\kvirc\kernel";"$(ProjectDir)\..\..\kvilib\ext";"$(ProjectDir)\..\..\kvilib\irc";"$(ProjectDir)\..\..\kvilib\tal";"$(ProjectDir)\..\..\kvirc\kvs";"$(ProjectDir)\..\..\kvilib\file";"$(ProjectDir)\..\..\kvilib\net";"$(QTDIR)\include\Qt3Support";"$(QTDIR)\include\QtCore\";"$(QTDIR)\include\QtGui";"$(QTDIR)\include\Qt";"$(QTDIR)\include\QtNetwork";"$(QTDIR)\include\QtXml";"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;RAWEDITOR_EXPORTS;_CRT_SECURE_NO_DEPRECATE;QT3_SUPPORT;"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;RAWEDITOR_EXPORTS;_CRT_SECURE_NO_DEPRECATE;"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
@@ -135,7 +135,7 @@ EnableFiberSafeOptimizations="true"
WholeProgramOptimization="true"
AdditionalIncludeDirectories=""$(ProjectDir)\..\..\kvirc\ui";"$(ProjectDir)\..\..\kvilib\core";"$(ProjectDir)\..\..\kvirc\module";"$(ProjectDir)\..\..\kvilib\config";"$(QTDIR)\include";"$(ProjectDir)\..\..\kvilib\system";"$(ProjectDir)\..\..\kvirc\uparser";"$(ProjectDir)\..\..\kvirc\sparser";"$(ProjectDir)\..\..\kvirc\kernel";"$(ProjectDir)\..\..\kvilib\ext";"$(ProjectDir)\..\..\kvilib\irc";"$(ProjectDir)\..\..\kvilib\tal";"$(ProjectDir)\..\..\kvirc\kvs";"$(ProjectDir)\..\..\kvilib\file";"$(ProjectDir)\..\..\kvilib\net";"$(QTDIR)\include\Qt3Support";"$(QTDIR)\include\QtCore\";"$(QTDIR)\include\QtGui";"$(QTDIR)\include\Qt";"$(QTDIR)\include\QtNetwork";"$(QTDIR)\include\QtXml";"
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;RAWEDITOR_EXPORTS;_CRT_SECURE_NO_DEPRECATE;QT3_SUPPORT;"
+ PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;RAWEDITOR_EXPORTS;_CRT_SECURE_NO_DEPRECATE;"
StringPooling="true"
MinimalRebuild="true"
ExceptionHandling="1"
|
