aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Noldor2008-05-24 10:47:26 +0000
committerGravatar Noldor2008-05-24 10:47:26 +0000
commit62a8bf04c221497f2350a1167228c842fca31831 (patch)
tree72de715bb0b085af3f5f6a3301688590d3e1d5e4 /src
parentfixed .desktop install (diff)
downloadKVIrc-62a8bf04c221497f2350a1167228c842fca31831.tar.gz
KVIrc-62a8bf04c221497f2350a1167228c842fca31831.tar.bz2
KVIrc-62a8bf04c221497f2350a1167228c842fca31831.zip
options module QT4 port (wip) + some QT4 fix
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1845 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
-rw-r--r--src/kvilib/tal/kvi_tal_treewidget.cpp698
-rw-r--r--src/kvilib/tal/kvi_tal_treewidget.h86
-rw-r--r--src/kvirc/ui/kvi_maskeditor.cpp4
-rw-r--r--src/kvirc/ui/kvi_maskeditor.h2
-rw-r--r--src/kvirc/ui/kvi_selectors.cpp86
-rw-r--r--src/kvirc/ui/kvi_selectors.h8
-rw-r--r--src/modules/dcc/send.cpp2
-rw-r--r--src/modules/filetransferwindow/filetransferwindow.cpp6
-rw-r--r--src/modules/options/dialog.cpp4
-rw-r--r--src/modules/options/instances.cpp6
-rw-r--r--src/modules/options/instances.h2
-rw-r--r--src/modules/options/libkvioptions.cpp14
-rw-r--r--src/modules/options/options_QT4_vc05.vcproj2
-rw-r--r--src/modules/options/optw_identity.cpp4
-rw-r--r--src/modules/options/optw_interfacefeatures.cpp2
-rw-r--r--src/modules/options/optw_ircoutput.cpp16
-rw-r--r--src/modules/options/optw_ircoutput.h2
-rw-r--r--src/modules/options/optw_mediatypes.cpp61
-rw-r--r--src/modules/options/optw_mediatypes.h16
-rw-r--r--src/modules/options/optw_messages.cpp4
-rw-r--r--src/modules/options/optw_nickserv.cpp58
-rw-r--r--src/modules/options/optw_nickserv.h4
-rw-r--r--src/modules/options/optw_proxy.cpp100
-rw-r--r--src/modules/options/optw_proxy.h16
-rw-r--r--src/modules/options/optw_servers.cpp455
-rw-r--r--src/modules/options/optw_servers.h23
-rw-r--r--src/modules/options/optw_sound.cpp4
-rw-r--r--src/modules/options/optw_taskbar.cpp4
-rw-r--r--src/modules/options/optw_urlhandlers.cpp48
-rw-r--r--src/modules/options/optw_userlist.cpp50
30 files changed, 614 insertions, 1173 deletions
diff --git a/src/kvilib/tal/kvi_tal_treewidget.cpp b/src/kvilib/tal/kvi_tal_treewidget.cpp
index cd9ff43b2..80887a50d 100644
--- a/src/kvilib/tal/kvi_tal_treewidget.cpp
+++ b/src/kvilib/tal/kvi_tal_treewidget.cpp
@@ -85,712 +85,68 @@ static QStyleOptionQ3ListView getStyleOption(const Q3ListView *lv, const Q3ListV
KviTalTreeWidget::KviTalTreeWidget(QWidget * pParent)
: QTreeWidget(pParent)
{
-/* connect(this,SIGNAL(selectionChanged(Q3ListViewItem *)),this,SLOT(redirect_selectionChanged(Q3ListViewItem *)));
- connect(this,SIGNAL(currentChanged(Q3ListViewItem *)),this,SLOT(redirect_currentChanged(Q3ListViewItem *)));
- connect(this,SIGNAL(clicked(Q3ListViewItem *)),this,SLOT(redirect_clicked(Q3ListViewItem *)));
- connect(this,SIGNAL(clicked(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_clicked(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(pressed(Q3ListViewItem *)),this,SLOT(redirect_pressed(Q3ListViewItem *)));
- connect(this,SIGNAL(pressed(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_pressed(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(doubleClicked(Q3ListViewItem *)),this,SLOT(redirect_doubleClicked(Q3ListViewItem *)));
- connect(this,SIGNAL(doubleClicked(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_doubleClicked(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(returnPressed(Q3ListViewItem *)),this,SLOT(redirect_returnPressed(Q3ListViewItem *)));
- connect(this,SIGNAL(spacePressed(Q3ListViewItem *)),this,SLOT(redirect_spacePressed(Q3ListViewItem *)));
- connect(this,SIGNAL(rightButtonClicked(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_rightButtonClicked(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(rightButtonPressed(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_rightButtonPressed(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(mouseButtonClicked(int,Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_mouseButtonClicked(int,Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(mouseButtonPressed(int,Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_mouseButtonPressed(int,Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(contextMenuRequested(Q3ListViewItem *,const QPoint &,int)),this,SLOT(redirect_contextMenuRequested(Q3ListViewItem *,const QPoint &,int)));
- connect(this,SIGNAL(onItem(Q3ListViewItem *)),this,SLOT(redirect_onItem(Q3ListViewItem *)));
- connect(this,SIGNAL(expanded(Q3ListViewItem *)),this,SLOT(redirect_expanded(Q3ListViewItem *)));
- connect(this,SIGNAL(collapsed(Q3ListViewItem *)),this,SLOT(redirect_collapsed(Q3ListViewItem *)));
- */
-}
-/*
-void KviTalTreeWidget::redirect_selectionChanged(Q3ListViewItem * pItem)
-{
- emit selectionChanged((KviTalTreeWidgetItem *)pItem);
-}
-
-void KviTalTreeWidget::redirect_currentChanged(Q3ListViewItem * pItem)
-{
- emit currentChanged((KviTalTreeWidgetItem *)pItem);
-}
-
-void KviTalTreeWidget::redirect_clicked(Q3ListViewItem * pItem)
-{
- emit clicked((KviTalTreeWidgetItem *)pItem);
-}
-
-void KviTalTreeWidget::redirect_clicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
-{
- emit clicked((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
-}
-
-void KviTalTreeWidget::redirect_pressed(Q3ListViewItem * pItem)
-{
- emit pressed((KviTalTreeWidgetItem *)pItem);
+ connect(this,SIGNAL(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *)),this,SLOT(redirect_currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *)));
+ connect(this,SIGNAL(itemActivated(QTreeWidgetItem *,int)),this,SLOT(redirect_itemActivated(QTreeWidgetItem *,int)));
+ connect(this,SIGNAL(itemChanged(QTreeWidgetItem *,int)),this,SLOT(redirect_itemChanged(QTreeWidgetItem *,int)));
+ connect(this,SIGNAL(itemClicked(QTreeWidgetItem *,int)),this,SLOT(redirect_itemClicked(QTreeWidgetItem *,int)));
+ connect(this,SIGNAL(itemCollapsed(QTreeWidgetItem *)),this,SLOT(redirect_itemCollapsed(QTreeWidgetItem *)));
+ connect(this,SIGNAL(itemExpanded(QTreeWidgetItem *)),this,SLOT(redirect_itemExpanded(QTreeWidgetItem *)));
+ connect(this,SIGNAL(itemDoubleClicked(QTreeWidgetItem *,int)),this,SLOT(redirect_itemDoubleClicked(QTreeWidgetItem *,int)));
+ connect(this,SIGNAL(itemEntered(QTreeWidgetItem *,int)),this,SLOT(redirect_itemEntered(QTreeWidgetItem *,int)));
+ connect(this,SIGNAL(itemPressed(QTreeWidgetItem *,int)),this,SLOT(redirect_itemPressed(QTreeWidgetItem *,int)));
}
-void KviTalTreeWidget::redirect_pressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
-{
- emit pressed((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
-}
-
-void KviTalTreeWidget::redirect_doubleClicked(Q3ListViewItem * pItem)
-{
- emit doubleClicked((KviTalTreeWidgetItem *)pItem);
-}
-
-void KviTalTreeWidget::redirect_doubleClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
-{
- emit doubleClicked((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
-}
-void KviTalTreeWidget::redirect_returnPressed(Q3ListViewItem * pItem)
-{
- emit returnPressed((KviTalTreeWidgetItem *)pItem);
-}
-void KviTalTreeWidget::redirect_spacePressed(Q3ListViewItem * pItem)
+void KviTalTreeWidget::redirect_currentItemChanged(QTreeWidgetItem *pItemCurr,QTreeWidgetItem *pItemPrev)
{
- emit spacePressed((KviTalTreeWidgetItem *)pItem);
+ emit currentItemChanged((KviTalTreeWidgetItem *)pItemCurr,(KviTalTreeWidgetItem *)pItemPrev);
}
-void KviTalTreeWidget::redirect_rightButtonClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
+void KviTalTreeWidget::redirect_itemActivated(QTreeWidgetItem *pItem,int col)
{
- emit rightButtonClicked((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
+ emit itemActivated((KviTalTreeWidgetItem *)pItem,col);
}
-void KviTalTreeWidget::redirect_rightButtonPressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
+void KviTalTreeWidget::redirect_itemChanged(QTreeWidgetItem *pItem,int col)
{
- emit rightButtonPressed((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
+ emit itemChanged((KviTalTreeWidgetItem *)pItem,col);
}
-void KviTalTreeWidget::redirect_mouseButtonClicked(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
-{
- emit mouseButtonClicked(iButton,(KviTalTreeWidgetItem *)pItem,pnt,uColumn);
-}
-void KviTalTreeWidget::redirect_mouseButtonPressed(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
+void KviTalTreeWidget::redirect_itemClicked(QTreeWidgetItem *pItem,int col)
{
- emit mouseButtonPressed(iButton,(KviTalTreeWidgetItem *)pItem,pnt,uColumn);
+ emit itemClicked((KviTalTreeWidgetItem *)pItem,col);
}
-void KviTalTreeWidget::redirect_contextMenuRequested(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn)
+void KviTalTreeWidget::redirect_itemCollapsed(QTreeWidgetItem *pItem)
{
- emit contextMenuRequested((KviTalTreeWidgetItem *)pItem,pnt,uColumn);
+ emit itemCollapsed((KviTalTreeWidgetItem *)pItem);
}
-void KviTalTreeWidget::redirect_onItem(Q3ListViewItem * pItem)
-{
- emit onItem((KviTalTreeWidgetItem *)pItem);
-}
-void KviTalTreeWidget::redirect_expanded(Q3ListViewItem * pItem)
-{
- emit expanded((KviTalTreeWidgetItem *)pItem);
-}
-void KviTalTreeWidget::redirect_collapsed(Q3ListViewItem * pItem)
+void KviTalTreeWidget::redirect_itemExpanded(QTreeWidgetItem *pItem)
{
- emit collapsed((KviTalTreeWidgetItem *)pItem);
+ emit itemExpanded((KviTalTreeWidgetItem *)pItem);
}
-struct KviTalCheckListItemPrivate
-{
- KviTalCheckListItemPrivate():
- exclusive(0),
- currentState(KviTalCheckListItem::Off),
- tristate(false) {}
-
- KviTalCheckListItem *exclusive;
- KviTalCheckListItem::ToggleState currentState;
- QHash<KviTalCheckListItem *, KviTalCheckListItem::ToggleState> statesDict;
- bool tristate;
-};
-
-KviTalCheckListItem::KviTalCheckListItem(KviTalCheckListItem *parent, const QString &text,Type tt)
-: KviTalTreeWidgetItem(parent, text, QString())
+void KviTalTreeWidget::redirect_itemDoubleClicked(QTreeWidgetItem *pItem,int col)
{
- myType = tt;
- init();
- if (myType == RadioButton) {
- if (parent->type() != RadioButtonController)
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a controller");
- else
- d->exclusive = parent;
- }
+ emit itemDoubleClicked((KviTalTreeWidgetItem *)pItem,col);
}
-KviTalCheckListItem::KviTalCheckListItem(KviTalCheckListItem *parent, KviTalTreeWidgetItem *after,const QString &text, Type tt)
-: KviTalTreeWidgetItem(parent, after, text)
+void KviTalTreeWidget::redirect_itemEntered(QTreeWidgetItem *pItem,int col)
{
- myType = tt;
- init();
- if (myType == RadioButton) {
- if (parent->type() != RadioButtonController)
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a controller");
- else
- d->exclusive = parent;
- }
+ emit itemEntered((KviTalTreeWidgetItem *)pItem,col);
}
-
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidgetItem *parent, const QString &text,Type tt)
-: KviTalTreeWidgetItem(parent, text, QString())
+void KviTalTreeWidget::redirect_itemPressed(QTreeWidgetItem *pItem,int col)
{
- myType = tt;
- if (myType == RadioButton) {
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a KviTalCheckListItem");
- }
- init();
+ emit itemPressed((KviTalTreeWidgetItem *)pItem,col);
}
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidgetItem *parent, KviTalTreeWidgetItem *after,const QString &text, Type tt)
-: KviTalTreeWidgetItem(parent, after, text)
-{
- myType = tt;
- if (myType == RadioButton) {
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a KviTalCheckListItem");
- }
- init();
-}
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidget *parent, const QString &text,Type tt)
-: KviTalTreeWidgetItem(parent, text)
-{
- myType = tt;
- if (tt == RadioButton){
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a KviTalCheckListItem");
- }
- init();
-}
-
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidget *parent, KviTalTreeWidgetItem *after,const QString &text, Type tt)
-: KviTalTreeWidgetItem(parent, after, text)
-{
- myType = tt;
- if (tt == RadioButton){
- qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be "
- "child of a KviTalCheckListItem");
- }
- init();
-}
-
-int KviTalCheckListItem::rtti() const
-{
- return RTTI;
-}
-
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidget *parent, const QString &text,const QPixmap & p)
-: KviTalTreeWidgetItem(parent, text)
-{
- myType = RadioButtonController;
- setPixmap(0, p);
- init();
-}
-
-KviTalCheckListItem::KviTalCheckListItem(KviTalTreeWidgetItem *parent, const QString &text,const QPixmap & p)
-: KviTalTreeWidgetItem(parent, text)
-{
- myType = RadioButtonController;
- setPixmap(0, p);
- init();
-}
-
-void KviTalCheckListItem::init()
-{
- d = new KviTalCheckListItemPrivate();
- on = false; // ### remove on ver 4
- // CheckBoxControllers by default have tristate set to true
- if (myType == CheckBoxController)
- setTristate(true);
-}
-
-KviTalCheckListItem::~KviTalCheckListItem()
-{
- if (myType == RadioButton
- && d->exclusive && d->exclusive->d
- && d->exclusive->d->exclusive == this)
- d->exclusive->turnOffChild();
- d->exclusive = 0; // so the children won't try to access us.
- delete d;
- d = 0;
-}
-
-void KviTalCheckListItem::setTristate(bool b)
-{
- if ((myType != CheckBoxController) && (myType != CheckBox)) {
- qWarning("KviTalCheckListItem::setTristate(), has no effect on RadioButton "
- "or RadioButtonController.");
- return;
- }
- d->tristate = b;
-}
-
-bool KviTalCheckListItem::isTristate() const
-{
- return d->tristate;
-}
-
-KviTalCheckListItem::ToggleState KviTalCheckListItem::state() const
-{
- if (!isTristate() && internalState() == NoChange)
- return Off;
- else
- return d->currentState;
-}
-
-KviTalCheckListItem::ToggleState KviTalCheckListItem::internalState() const
-{
- return d->currentState;
-}
-
-void KviTalCheckListItem::setState(ToggleState s)
-{
- if (myType == CheckBoxController && state() == NoChange)
- updateStoredState(this);
- setState(s, true, true);
-}
-
-void KviTalCheckListItem::setState(ToggleState s, bool update, bool store)
-{
-
- if (s == internalState())
- return;
-
- if (myType == CheckBox) {
- setCurrentState(s);
- stateChange(state());
- if (update && parent() && parent()->rtti() == 1
- && ((KviTalCheckListItem*)parent())->type() == CheckBoxController)
- ((KviTalCheckListItem*)parent())->updateController(update, store);
- } else if (myType == CheckBoxController) {
- if (s == NoChange && childCount()) {
- restoreState(this);
- } else {
- KviTalTreeWidgetItem *item = firstChild();
- int childCount = 0;
- while(item) {
- if (item->rtti() == 1 &&
- (((KviTalCheckListItem*)item)->type() == CheckBox ||
- ((KviTalCheckListItem*)item)->type() == CheckBoxController)) {
- KviTalCheckListItem *checkItem = (KviTalCheckListItem*)item;
- checkItem->setState(s, false, false);
- childCount++;
- }
- item = item->nextSibling();
- }
- if (update) {
- if (childCount > 0) {
- ToggleState oldState = internalState();
- updateController(false, false);
- if (oldState != internalState() &&
- parent() && parent()->rtti() == 1 &&
- ((KviTalCheckListItem*)parent())->type() == CheckBoxController)
- ((KviTalCheckListItem*)parent())->updateController(update, store);
-
- updateController(update, store);
- } else {
- // if there are no children we simply set the CheckBoxController and update its parent
- setCurrentState(s);
- stateChange(state());
- if (parent() && parent()->rtti() == 1
- && ((KviTalCheckListItem*)parent())->type() == CheckBoxController)
- ((KviTalCheckListItem*)parent())->updateController(update, store);
- }
- } else {
- setCurrentState(s);
- stateChange(state());
- }
- }
- } else if (myType == RadioButton) {
- if (s == On) {
- if (d->exclusive && d->exclusive->d->exclusive != this)
- d->exclusive->turnOffChild();
- setCurrentState(s);
- if (d->exclusive)
- d->exclusive->d->exclusive = this;
- } else {
- if (d->exclusive && d->exclusive->d->exclusive == this)
- d->exclusive->d->exclusive = 0;
- setCurrentState(Off);
- }
- stateChange(state());
- }
- repaint();
-}
-
-void KviTalCheckListItem::setCurrentState(ToggleState s)
-{
- ToggleState old = d->currentState;
- d->currentState = s;
- if (d->currentState == On)
- on = true;
- else
- on = false;
-
-//#ifndef QT_NO_ACCESSIBILITY
-// if (old != d->currentState && listView())
-// QAccessible::updateAccessibility(listView()->viewport(), indexOfItem(this), QAccessible::StateChanged);
-//#else
-// Q_UNUSED(old);
-//#endif
-}
-
-void KviTalCheckListItem::setStoredState(ToggleState newState, KviTalCheckListItem *key)
-{
- if (myType == CheckBox || myType == CheckBoxController)
- d->statesDict[key] = newState;
-}
-
-KviTalCheckListItem::ToggleState KviTalCheckListItem::storedState(KviTalCheckListItem *key) const
-{
- QHash<KviTalCheckListItem *, KviTalCheckListItem::ToggleState>::Iterator it = d->statesDict.find(key);
- if (it != d->statesDict.end())
- return it.value();
- else
- return Off;
-}
-
-void KviTalCheckListItem::turnOffChild()
-{
- if (myType == RadioButtonController && d->exclusive)
- d->exclusive->setOn(false);
-}
-
-void KviTalCheckListItem::activate()
-{
- KviTalTreeWidget * lv = listView();
-
- if (lv && !lv->isEnabled() || !isEnabled())
- return;
-
- QPoint pos;
- int boxsize = lv->style()->pixelMetric(QStyle::PM_CheckListButtonSize, 0, lv);
- if (activatedPos(pos)) {
- bool parentControl = false;
- if (parent() && parent()->rtti() == 1 &&
- ((KviTalCheckListItem*) parent())->type() == RadioButtonController)
- parentControl = true;
-
- int x = parentControl ? 0 : 3;
- int align = lv->columnAlignment(0);
- int marg = lv->itemMargin();
- int y = 0;
-
- if (align & Qt::AlignVCenter)
- y = ((height() - boxsize) / 2) + marg;
- else
- y = (lv->fontMetrics().height() + 2 + marg - boxsize) / 2;
-
- QRect r(x, y, boxsize-3, boxsize-3);
- // columns might have been swapped
- r.moveBy(lv->header()->sectionPos(0), 0);
- if (!r.contains(pos))
- return;
- }
- if ((myType == CheckBox) || (myType == CheckBoxController)) {
- //lv->d->startEdit = FALSE;
- switch (internalState()) {
- case On:
- setState(Off);
- break;
- case Off:
- if (!isTristate() && myType == CheckBox) {
- setState(On);
- } else {
- setState(NoChange);
- if (myType == CheckBoxController && internalState() != NoChange)
- setState(On);
- }
- break;
- case NoChange:
- setState(On);
- break;
- }
- ignoreDoubleClick();
- } else if (myType == RadioButton) {
- setOn(true);
- ignoreDoubleClick();
- }
-}
-
-void KviTalCheckListItem::setOn(bool b )
-{
- if (b)
- setState(On , true, true);
- else
- setState(Off , true, true);
-}
-
-void KviTalCheckListItem::stateChange(bool)
-{
-}
-
-void KviTalCheckListItem::stateChange(ToggleState s)
-{
- stateChange(s == On);
-}
-
-void KviTalCheckListItem::restoreState(KviTalCheckListItem *key, int depth)
-{
- switch (type()) {
- case CheckBox:
- setCurrentState(storedState(key));
- stateChange(state());
- repaint();
- break;
- case CheckBoxController: {
- KviTalTreeWidgetItem *item = firstChild();
- int childCount = 0;
- while (item) {
- // recursively calling restoreState for children of type CheckBox and CheckBoxController
- if (item->rtti() == 1 &&
- (((KviTalCheckListItem*)item)->type() == CheckBox ||
- ((KviTalCheckListItem*)item)->type() == CheckBoxController)) {
- ((KviTalCheckListItem*)item)->restoreState(key , depth+1);
- childCount++;
- }
- item = item->nextSibling();
- }
- if (childCount > 0) {
- if (depth == 0)
- updateController(true);
- else
- updateController(false);
- } else {
- // if there are no children we retrieve the CheckBoxController state directly.
- setState(storedState(key), true, false);
- }
- }
- break;
- default:
- break;
- }
-}
-
-void KviTalCheckListItem::updateController(bool update , bool store)
-{
- if (myType != CheckBoxController)
- return;
-
- KviTalCheckListItem *controller = 0;
- // checks if this CheckBoxController has another CheckBoxController as parent
- if (parent() && parent()->rtti() == 1
- && ((KviTalCheckListItem*)parent())->type() == CheckBoxController)
- controller = (KviTalCheckListItem*)parent();
-
- ToggleState theState = Off;
- bool first = true;
- KviTalTreeWidgetItem *item = firstChild();
- while(item && theState != NoChange) {
- if (item->rtti() == 1 &&
- (((KviTalCheckListItem*)item)->type() == CheckBox ||
- ((KviTalCheckListItem*)item)->type() == CheckBoxController)) {
- KviTalCheckListItem *checkItem = (KviTalCheckListItem*)item;
- if (first) {
- theState = checkItem->internalState();
- first = false;
- } else {
- if (checkItem->internalState() == NoChange ||
- theState != checkItem->internalState())
- theState = NoChange;
- else
- theState = checkItem->internalState();
- }
- }
- item = item->nextSibling();
- }
- if (internalState() != theState) {
- setCurrentState(theState);
- if (store && (internalState() == On || internalState() == Off))
- updateStoredState(this);
- stateChange(state());
- if (update && controller) {
- controller->updateController(update, store);
- }
- repaint();
- }
-}
-
-void KviTalCheckListItem::updateStoredState(KviTalCheckListItem *key)
-{
- if (myType != CheckBoxController)
- return;
-
- KviTalTreeWidgetItem *item = firstChild();
- while(item) {
- if (item->rtti() == 1) {
- KviTalCheckListItem *checkItem = (KviTalCheckListItem*)item;
- if (checkItem->type() == CheckBox)
- checkItem->setStoredState(checkItem->internalState(), key);
- else if (checkItem->type() == CheckBoxController)
- checkItem->updateStoredState(key);
- }
- item = item->nextSibling();
- }
- // this state is only needed if the CheckBoxController has no CheckBox / CheckBoxController children.
- setStoredState(internalState() , key);
-}
-
-void KviTalCheckListItem::setup()
-{
- KviTalTreeWidgetItem::setup();
- int h = height();
- KviTalTreeWidget *lv = listView();
- if (lv)
- h = qMax(lv->style()->pixelMetric(QStyle::PM_CheckListButtonSize, 0, lv),
- h);
- h = qMax(h, QApplication::globalStrut().height());
- setHeight(h);
-}
-
-int KviTalCheckListItem::width(const QFontMetrics& fm, const KviTalTreeWidget* lv, int column) const
-{
- int r = KviTalTreeWidgetItem::width(fm, lv, column);
- if (column == 0) {
- r += lv->itemMargin();
- if (myType == RadioButtonController && pixmap(0)) {
- // r += 0;
- } else {
- r += lv->style()->pixelMetric(QStyle::PM_CheckListButtonSize, 0, lv) + 4;
- }
- }
- return qMax(r, QApplication::globalStrut().width());
-}
-
-void KviTalCheckListItem::paintCell(QPainter * p, const QColorGroup & cg, int column, int width, int align)
-{
- if (!p)
- return;
-
- KviTalTreeWidget *lv = listView();
- if (!lv)
- return;
-
- const QPalette::ColorRole crole = lv->foregroundRole();
- if (cg.brush(crole) != lv->palette().brush(crole))
- p->fillRect(0, 0, width, height(), cg.brush(crole));
- else
- lv->paintEmptyArea(p, QRect(0, 0, width, height()));
-
- if (column != 0) {
- // The rest is text, or for subclasses to change.
- KviTalTreeWidgetItem::paintCell(p, cg, column, width, align);
- return;
- }
-
- bool parentControl = false;
- if (parent() && parent()->rtti() == 1 &&
- ((KviTalCheckListItem*) parent())->type() == RadioButtonController)
- parentControl = true;
-
- QFontMetrics fm(lv->fontMetrics());
- int boxsize = lv->style()->pixelMetric(myType == RadioButtonController ? QStyle::PM_CheckListControllerSize :
- QStyle::PM_CheckListButtonSize, 0, lv);
- int marg = lv->itemMargin();
- int r = marg;
-
- // Draw controller / checkbox / radiobutton ---------------------
- QStyle::State styleflags = QStyle::State_None;
- if (internalState() == On) {
- styleflags |= QStyle::State_On;
- } else if (internalState() == NoChange) {
- if (myType == CheckBoxController && !isTristate())
- styleflags |= QStyle::State_Off;
- else
- styleflags |= QStyle::State_NoChange;
- } else {
- styleflags |= QStyle::State_Off;
- }
- if (isSelected())
- styleflags |= QStyle::State_Selected;
- if (isEnabled() && lv->isEnabled())
- styleflags |= QStyle::State_Enabled;
- if (lv->window()->isActiveWindow())
- styleflags |= QStyle::State_Active;
-
- if (myType == RadioButtonController) {
- int x = 0;
- if(!parentControl)
- x += 3;
- if (!pixmap(0)) {
- QStyleOptionQ3ListView opt = getStyleOption(lv, this);
- opt.rect.setRect(x, 0, boxsize, fm.height() + 2 + marg);
- opt.palette = cg;
- opt.state = styleflags;
- lv->style()->drawPrimitive(QStyle::PE_Q3CheckListController, &opt, p, lv);
- r += boxsize + 4;
- }
- } else {
- Q_ASSERT(lv); //###
- int x = 0;
- int y = 0;
- if (!parentControl)
- x += 3;
- if (align & Qt::AlignVCenter)
- y = ((height() - boxsize) / 2) + marg;
- else
- y = (fm.height() + 2 + marg - boxsize) / 2;
-
- QStyleOptionQ3ListView opt = getStyleOption(lv, this);
- opt.rect.setRect(x, y, boxsize, fm.height() + 2 + marg);
- opt.palette = cg;
- opt.state = styleflags;
- lv->style()->drawPrimitive((myType == CheckBox || myType == CheckBoxController)
- ? QStyle::PE_Q3CheckListIndicator
- : QStyle::PE_Q3CheckListExclusiveIndicator, &opt, p, lv);
- r += boxsize + 4;
- }
-
- // Draw text ----------------------------------------------------
- p->translate(r, 0);
- p->setPen(QPen(cg.text()));
- KviTalTreeWidgetItem::paintCell(p, cg, column, width - r, align);
-}
-
-void KviTalCheckListItem::paintFocus(QPainter *p, const QColorGroup & cg,
-const QRect & r)
-{
- bool intersect = true;
- KviTalTreeWidget *lv = listView();
- if (lv && lv->header()->mapToActual(0) != 0) {
- int xdepth = lv->treeStepSize() * (depth() + (lv->rootIsDecorated() ? 1 : 0)) + lv->itemMargin();
- int p = lv->header()->cellPos(lv->header()->mapToActual(0));
- xdepth += p;
- intersect = r.intersects(QRect(p, r.y(), xdepth - p + 1, r.height()));
- }
- bool parentControl = false;
- if (parent() && parent()->rtti() == 1 &&
- ((KviTalCheckListItem*) parent())->type() == RadioButtonController)
- parentControl = true;
- if (myType != RadioButtonController && intersect &&
- (lv->rootIsDecorated() || myType == RadioButton ||
- (myType == CheckBox && parentControl))) {
- QRect rect;
- int boxsize = lv->style()->pixelMetric(QStyle::PM_CheckListButtonSize, 0, lv);
- if (lv->columnAlignment(0) == Qt::AlignCenter) {
- QFontMetrics fm(lv->font());
- int bx = (lv->columnWidth(0) - (boxsize + fm.width(text())))/2 + boxsize;
- if (bx < 0) bx = 0;
- rect.setRect(r.x() + bx + 5, r.y(), r.width() - bx - 5,
- r.height());
- } else
- rect.setRect(r.x() + boxsize + 5, r.y(), r.width() - boxsize - 5,
- r.height());
- KviTalTreeWidgetItem::paintFocus(p, cg, rect);
- } else {
- KviTalTreeWidgetItem::paintFocus(p, cg, r);
- }
-}
-
-*/
#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES
#include "kvi_tal_treewidget.moc"
#endif //!COMPILE_USE_STANDALONE_MOC_SOURCES
diff --git a/src/kvilib/tal/kvi_tal_treewidget.h b/src/kvilib/tal/kvi_tal_treewidget.h
index 87c8ee975..9641a5c7b 100644
--- a/src/kvilib/tal/kvi_tal_treewidget.h
+++ b/src/kvilib/tal/kvi_tal_treewidget.h
@@ -51,59 +51,37 @@ class KviTalTreeWidgetItem;
class KVILIB_API KviTalTreeWidget : public QTreeWidget
{
- //friend class KviTalCheckListItem;
Q_OBJECT
public:
KviTalTreeWidget(QWidget * pParent);
virtual ~KviTalTreeWidget() {};
public:
void addColumn(const QString label){setHeaderLabel(label);};
- // Shadow the internal Qt methods
- /*KviTalTreeWidgetItem * firstChild() const { return (KviTalTreeWidgetItem *)Q3ListView::firstChild(); };
- KviTalTreeWidgetItem * lastItem() const { return (KviTalTreeWidgetItem *)Q3ListView::lastItem(); };
- KviTalTreeWidgetItem * selectedItem() const { return (KviTalTreeWidgetItem *)Q3ListView::selectedItem(); };
- KviTalTreeWidgetItem * currentItem() const { return (KviTalTreeWidgetItem *)Q3ListView::currentItem(); };
- KviTalTreeWidgetItem * itemAt(const QPoint &pnt) const { return (KviTalTreeWidgetItem *)Q3ListView::itemAt(pnt); };
-
+
signals:
- void selectionChanged(KviTalTreeWidgetItem * pItem);
- void currentChanged(KviTalTreeWidgetItem * pItem);
- void clicked(KviTalTreeWidgetItem * pItem);
- void clicked(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void pressed(KviTalTreeWidgetItem * pItem);
- void pressed(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void doubleClicked(KviTalTreeWidgetItem * pItem);
- void doubleClicked(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void returnPressed(KviTalTreeWidgetItem * pItem);
- void spacePressed(KviTalTreeWidgetItem * pItem);
- void rightButtonClicked(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void rightButtonPressed(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void mouseButtonClicked(int iButton,KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void mouseButtonPressed(int iButton,KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void contextMenuRequested(KviTalTreeWidgetItem * pItem,const QPoint &pnt,int uColumn);
- void onItem(KviTalTreeWidgetItem * pItem);
- void expanded(KviTalTreeWidgetItem * pItem);
- void collapsed(KviTalTreeWidgetItem * pItem);
+ void currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *);
+ void itemActivated(KviTalTreeWidgetItem *,int);
+ void itemChanged(KviTalTreeWidgetItem *,int);
+ void itemClicked(KviTalTreeWidgetItem *,int);
+
+ void itemCollapsed(KviTalTreeWidgetItem *);
+ void itemExpanded(KviTalTreeWidgetItem *);
+ void itemDoubleClicked(KviTalTreeWidgetItem *,int);
+ void itemEntered(KviTalTreeWidgetItem *,int);
+ void itemPressed(KviTalTreeWidgetItem *,int);
+
+
+
protected slots:
- void redirect_selectionChanged(Q3ListViewItem * pItem);
- void redirect_currentChanged(Q3ListViewItem * pItem);
- void redirect_clicked(Q3ListViewItem * pItem);
- void redirect_clicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_pressed(Q3ListViewItem * pItem);
- void redirect_pressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_doubleClicked(Q3ListViewItem * pItem);
- void redirect_doubleClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_returnPressed(Q3ListViewItem * pItem);
- void redirect_spacePressed(Q3ListViewItem * pItem);
- void redirect_rightButtonClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_rightButtonPressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_mouseButtonClicked(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_mouseButtonPressed(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_contextMenuRequested(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn);
- void redirect_onItem(Q3ListViewItem * pItem);
- void redirect_expanded(Q3ListViewItem * pItem);
- void redirect_collapsed(Q3ListViewItem * pItem);
-*/
+ void redirect_currentItemChanged(QTreeWidgetItem *pItemCurr,QTreeWidgetItem *pItemPrev);
+ void redirect_itemActivated(QTreeWidgetItem *pItem,int col);
+ void redirect_itemChanged(QTreeWidgetItem *pItem,int col);
+ void redirect_itemClicked(QTreeWidgetItem *pItem,int col);
+ void redirect_itemCollapsed(QTreeWidgetItem *pItem);
+ void redirect_itemExpanded(QTreeWidgetItem *pItem);
+ void redirect_itemDoubleClicked(QTreeWidgetItem *pItem,int col);
+ void redirect_itemEntered(QTreeWidgetItem *pItem,int col);
+ void redirect_itemPressed(QTreeWidgetItem *pItem,int col);
};
@@ -122,7 +100,23 @@ public:
: QTreeWidgetItem(pParent) {
setText(0,szLabel);
};
- int compare ( KviTalTreeWidgetItem * i, int col, bool ascending ) const
+ KviTalTreeWidgetItem(KviTalTreeWidget * pParent,const QString &szLabel, const QString &szLabel1, const QString &szLabel2, const QString &szLabel3 )
+ : QTreeWidgetItem(pParent) {
+ setText(0,szLabel);
+ setText(1,szLabel1);
+ setText(2,szLabel2);
+ setText(3,szLabel3);
+
+ };
+ KviTalTreeWidgetItem(KviTalTreeWidget * pParent,const QString &szLabel, const QString &szLabel1, const QString &szLabel2, const QString &szLabel3, const QString &szLabel4 )
+ : QTreeWidgetItem(pParent) {
+ setText(0,szLabel);
+ setText(1,szLabel1);
+ setText(2,szLabel2);
+ setText(3,szLabel3);
+ setText(4,szLabel4);
+ };
+ int compare ( KviTalTreeWidgetItem * i, int col, bool ascending ) const
{
QString key=text(col);
return key.localeAwareCompare(i->text(col));
diff --git a/src/kvirc/ui/kvi_maskeditor.cpp b/src/kvirc/ui/kvi_maskeditor.cpp
index 471cbb2e2..e4cf558e7 100644
--- a/src/kvirc/ui/kvi_maskeditor.cpp
+++ b/src/kvirc/ui/kvi_maskeditor.cpp
@@ -198,7 +198,7 @@ KviMaskEditor::KviMaskEditor(QWidget * par,KviWindowToolPageButton* button,KviPo
m_pMaskBox->setAllColumnsShowFocus(true);
// m_pMaskBox->setShowSortIndicator(true);
m_pMaskBox->setSortingEnabled(true);
- connect(m_pMaskBox,SIGNAL(doubleClicked ( KviTalTreeWidgetItem * )),this,SLOT(listViewDoubleClicked( KviTalTreeWidgetItem * )));
+ connect(m_pMaskBox,SIGNAL(itemDoubleClicked ( KviTalTreeWidgetItem * )),this,SLOT(itemDoubleClicked( KviTalTreeWidgetItem * )));
g->addWidget(m_pMaskBox,3,0,1,2);
m_pRemoveMask = new QPushButton(__tr2qs("Re&move"),this);
@@ -317,7 +317,7 @@ void KviMaskEditor::removeMask(KviMaskEntry *e)
}
}
-void KviMaskEditor::listViewDoubleClicked( KviTalTreeWidgetItem * pItem)
+void KviMaskEditor::itemDoubleClicked( KviTalTreeWidgetItem * pItem)
{
if(pItem)
{
diff --git a/src/kvirc/ui/kvi_maskeditor.h b/src/kvirc/ui/kvi_maskeditor.h
index d310a694e..2e2b31a75 100644
--- a/src/kvirc/ui/kvi_maskeditor.h
+++ b/src/kvirc/ui/kvi_maskeditor.h
@@ -95,7 +95,7 @@ public:
protected slots:
void removeClicked();
void addClicked();
- void listViewDoubleClicked( KviTalTreeWidgetItem * );
+ void itemDoubleClicked( KviTalTreeWidgetItem * );
void searchTextChanged ( const QString & );
signals:
void removeMasks(KviMaskEditor *,KviPointerList<KviMaskEntry> *);
diff --git a/src/kvirc/ui/kvi_selectors.cpp b/src/kvirc/ui/kvi_selectors.cpp
index dfa71f78c..22f14430b 100644
--- a/src/kvirc/ui/kvi_selectors.cpp
+++ b/src/kvirc/ui/kvi_selectors.cpp
@@ -386,7 +386,7 @@ KviStringListSelector::KviStringListSelector(QWidget * par,const QString & txt,Q
: KviTalVBox(par), KviSelectorInterface()
{
m_pLabel = new QLabel(txt,this);
- m_pListBox = new KviTalListBox(this);
+ m_pListWidget = new KviTalListWidget(this);
m_pLineEdit = new QLineEdit(this);
connect(m_pLineEdit,SIGNAL(textChanged(const QString &)),this,SLOT(textChanged(const QString &)));
connect(m_pLineEdit,SIGNAL(returnPressed()),this,SLOT(addClicked()));
@@ -396,11 +396,11 @@ KviStringListSelector::KviStringListSelector(QWidget * par,const QString & txt,Q
m_pRemoveButton = new QPushButton(__tr2qs("Re&move"),hBox);
connect(m_pRemoveButton,SIGNAL(clicked()),this,SLOT(removeClicked()));
m_pOption = pOption;
- m_pListBox->insertStringList(*pOption);
- m_pListBox->setSelectionMode(KviTalListBox::Extended);
- connect(m_pListBox,SIGNAL(selectionChanged()),this,SLOT(selectionChanged()));
+ m_pListWidget->addItems(*pOption);
+ m_pListWidget->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ connect(m_pListWidget,SIGNAL(itemSelectionChanged()),this,SLOT(itemSelectionChanged()));
setSpacing(4);
- setStretchFactor(m_pListBox,1);
+ setStretchFactor(m_pListWidget,1);
setEnabled(bEnabled);
}
@@ -408,18 +408,22 @@ KviStringListSelector::~KviStringListSelector()
{
}
-void KviStringListSelector::selectionChanged()
+void KviStringListSelector::itemSelectionChanged()
{
- unsigned int uCount = m_pListBox->count();
- bool bSomeSelected = false;
- for(unsigned int u=0;u<uCount;u++)
+
+ //unsigned int uCount = m_pListWidget->count();
+ bool bSomeSelected ;
+ if (m_pListWidget->selectedItems().count()) bSomeSelected = true;
+ else bSomeSelected = false;
+ /*for(unsigned int u=0;u<uCount;u++)
{
- if(m_pListBox->isSelected(u))
+ if(m_pListWidget->isSelected(u))
{
bSomeSelected = true;
break;
}
}
+ */
m_pRemoveButton->setEnabled(isEnabled() && bSomeSelected);
}
@@ -437,27 +441,30 @@ void KviStringListSelector::setEnabled(bool bEnabled)
QString txt = m_pLineEdit->text();
txt.trimmed();
m_pAddButton->setEnabled(bEnabled && (txt.length() > 0));
- unsigned int uCount = m_pListBox->count();
- bool bSomeSelected = false;
- for(unsigned int u=0;u<uCount;u++)
+ //unsigned int uCount = m_pListWidget->count();
+ bool bSomeSelected;
+ if (m_pListWidget->selectedItems().count()) bSomeSelected = true;
+ else bSomeSelected = false;
+ /*for(unsigned int u=0;u<uCount;u++)
{
- if(m_pListBox->isSelected(u))
+ if(m_pListWidget->isSelected(u))
{
bSomeSelected = true;
break;
}
- }
+ }*/
+
m_pRemoveButton->setEnabled(bEnabled && bSomeSelected);
- m_pListBox->setEnabled(bEnabled);
+ m_pListWidget->setEnabled(bEnabled);
}
void KviStringListSelector::commit()
{
- unsigned int uCount = m_pListBox->count();
+ unsigned int uCount = m_pListWidget->count();
m_pOption->clear();
for(unsigned int u=0;u<uCount;u++)
{
- QString str = m_pListBox->text(u);
+ QString str = m_pListWidget->item(u)->text();
str.trimmed();
if(str.length() > 0)m_pOption->append(str);
}
@@ -467,16 +474,18 @@ void KviStringListSelector::addClicked()
{
QString str = m_pLineEdit->text();
str.trimmed();
- if(str.length() > 0)m_pListBox->insertItem(str);
+ if(str.length() > 0)m_pListWidget->insertItem(m_pListWidget->count(),str);
m_pLineEdit->setText("");
}
void KviStringListSelector::removeClicked()
{
- unsigned int uCount = m_pListBox->count();
+ unsigned int uCount = m_pListWidget->count();
for(unsigned int u=0;u<uCount;u++)
{
- while(m_pListBox->isSelected(u))m_pListBox->removeItem(u);
+ while(m_pListWidget->item(u)->isSelected()){
+ delete (KviTalListWidgetItem*)m_pListWidget->takeItem(u);
+ }
}
}
@@ -722,10 +731,13 @@ KviCahnnelListSelector::KviCahnnelListSelector(QWidget * par,const QString & txt
: KviTalVBox(par), KviSelectorInterface()
{
m_pLabel = new QLabel(txt,this);
- m_pListView = new KviTalTreeWidget(this);
- m_pListView->addColumn(__tr2qs("Channel name"));
- m_pListView->addColumn(__tr2qs("Channel password"));
-
+ m_pTreeWidget = new KviTalTreeWidget(this);
+ m_pTreeWidget->setRootIsDecorated(false);
+ m_pTreeWidget->setColumnCount(2);
+ QStringList columnLabels;
+ columnLabels.append(__tr2qs("Channel name"));
+ columnLabels.append(__tr2qs("Channel password"));
+ m_pTreeWidget->setHeaderLabels(columnLabels);
KviTalHBox* pEditsHBox = new KviTalHBox(this);
m_pChanLineEdit = new QLineEdit(pEditsHBox);
@@ -746,14 +758,14 @@ KviCahnnelListSelector::KviCahnnelListSelector(QWidget * par,const QString & txt
m_pOption = pOption;
for ( QStringList::Iterator it = pOption->begin(); it != pOption->end(); ++it ) {
- new KviChanTreeViewItem(m_pListView,(*it).section(':',0,0),(*it).section(':',1));
+ new KviChanTreeViewItem(m_pTreeWidget,(*it).section(':',0,0),(*it).section(':',1));
}
- m_pListView->setSelectionMode(QAbstractItemView::ExtendedSelection);
- m_pListView->setAllColumnsShowFocus(TRUE);
- connect(m_pListView,SIGNAL(selectionChanged()),this,SLOT(selectionChanged()));
+ m_pTreeWidget->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ m_pTreeWidget->setAllColumnsShowFocus(TRUE);
+ connect(m_pTreeWidget,SIGNAL(selectionChanged()),this,SLOT(selectionChanged()));
setSpacing(4);
- setStretchFactor(m_pListView,1);
+ setStretchFactor(m_pTreeWidget,1);
setEnabled(bEnabled);
}
@@ -765,11 +777,11 @@ void KviCahnnelListSelector::commit()
{
m_pOption->clear();
register KviChanTreeViewItem* pItem;
- for (int i=0;i<m_pListView->topLevelItemCount();i++)
+ for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
{
- pItem=(KviChanTreeViewItem*)m_pListView->topLevelItem(i);
+ pItem=(KviChanTreeViewItem*)m_pTreeWidget->topLevelItem(i);
m_pOption->append(pItem->text(0)+":"+pItem->pass());
- //KviTalTreeWidgetItemIterator it( m_pListView);
+ //KviTalTreeWidgetItemIterator it( m_pTreeWidget);
//while ( it.current() ) {
// pItem = (KviChanTreeViewItem*)( it.current() );
// m_pOption->append(pItem->text(0)+":"+pItem->pass());
@@ -780,7 +792,7 @@ void KviCahnnelListSelector::commit()
void KviCahnnelListSelector::setEnabled(bool bEnabled)
{
m_pLabel->setEnabled(bEnabled);
- m_pListView->setEnabled(bEnabled);
+ m_pTreeWidget->setEnabled(bEnabled);
m_pChanLineEdit->setEnabled(bEnabled);
m_pPassLineEdit->setEnabled(bEnabled);
m_pAddButton->setEnabled(bEnabled);
@@ -800,7 +812,7 @@ void KviCahnnelListSelector::addClicked()
{
if(!m_pChanLineEdit->text().isEmpty())
{
- new KviChanTreeViewItem(m_pListView,m_pChanLineEdit->text().trimmed(),m_pPassLineEdit->text().trimmed());
+ new KviChanTreeViewItem(m_pTreeWidget,m_pChanLineEdit->text().trimmed(),m_pPassLineEdit->text().trimmed());
m_pChanLineEdit->clear();
m_pPassLineEdit->clear();
}
@@ -809,8 +821,8 @@ void KviCahnnelListSelector::addClicked()
void KviCahnnelListSelector::removeClicked()
{
KviPointerList<KviTalTreeWidgetItem> lst;
- QList<QTreeWidgetItem *> items=m_pListView->selectedItems () ;
- //KviTalTreeWidgetItemIterator it( m_pListView, KviTalTreeWidgetItemIterator::Selected );
+ QList<QTreeWidgetItem *> items=m_pTreeWidget->selectedItems () ;
+ //KviTalTreeWidgetItemIterator it( m_pTreeWidget, KviTalTreeWidgetItemIterator::Selected );
//while ( it.current() ) {
for (int i=0;i<items.count();i++)
{
diff --git a/src/kvirc/ui/kvi_selectors.h b/src/kvirc/ui/kvi_selectors.h
index bc2d52111..a26f19269 100644
--- a/src/kvirc/ui/kvi_selectors.h
+++ b/src/kvirc/ui/kvi_selectors.h
@@ -33,7 +33,7 @@
#include "kvi_tal_hbox.h"
#include "kvi_tal_vbox.h"
#include "kvi_tal_scrollview.h"
-#include "kvi_tal_listbox.h"
+#include "kvi_tal_listwidget.h"
#include "kvi_tal_treewidget.h"
#include <QCheckBox>
@@ -267,7 +267,7 @@ public:
~KviStringListSelector();
private:
QLabel * m_pLabel;
- KviTalListBox * m_pListBox;
+ KviTalListWidget * m_pListWidget;
QLineEdit * m_pLineEdit;
QPushButton * m_pAddButton;
QPushButton * m_pRemoveButton;
@@ -277,7 +277,7 @@ public:
virtual void setEnabled(bool bEnabled);
private slots:
void textChanged(const QString &str);
- void selectionChanged();
+ void itemSelectionChanged();
void addClicked();
void removeClicked();
};
@@ -345,7 +345,7 @@ public:
~KviCahnnelListSelector();
private:
QLabel * m_pLabel;
- KviTalTreeWidget * m_pListView;
+ KviTalTreeWidget * m_pTreeWidget;
QLineEdit * m_pChanLineEdit;
QLineEdit * m_pPassLineEdit;
QPushButton * m_pAddButton;
diff --git a/src/modules/dcc/send.cpp b/src/modules/dcc/send.cpp
index 3888084a7..30190dd12 100644
--- a/src/modules/dcc/send.cpp
+++ b/src/modules/dcc/send.cpp
@@ -1388,7 +1388,7 @@ KviDccFileTransfer * KviDccFileTransfer::nonFailedTransferWithLocalFileName(cons
{
#ifdef COMPILE_ON_WINDOWS
// on windows the file names are case insensitive
- if(t->localFileName().lower() == szLocalFileName.lower())
+ if(t->localFileName().toLower() == szLocalFileName.toLower())
#else
if(t->localFileName() == szLocalFileName)
#endif
diff --git a/src/modules/filetransferwindow/filetransferwindow.cpp b/src/modules/filetransferwindow/filetransferwindow.cpp
index 9b468d09e..7f786f312 100644
--- a/src/modules/filetransferwindow/filetransferwindow.cpp
+++ b/src/modules/filetransferwindow/filetransferwindow.cpp
@@ -462,7 +462,7 @@ void KviFileTransferWindow::openLocalFileTerminal()
if(!t)return;
QString tmp = t->localFileName();
if(tmp.isEmpty())return;
- int idx = tmp.findRev("/");
+ int idx = tmp.lastIndexOf("/");
if(idx == -1)return;
tmp = tmp.left(idx);
tmp.append("\"");
@@ -477,7 +477,7 @@ void KviFileTransferWindow::openLocalFileTerminal()
QString tmp = t->localFileName();
if(tmp.isEmpty())return;
- int idx = tmp.findRev("/");
+ int idx = tmp.lastIndexOf("/");
if(idx == -1)return;
tmp = tmp.left(idx);
@@ -603,7 +603,7 @@ void KviFileTransferWindow::openLocalFileFolder()
QString tmp = t->localFileName();
if(tmp.isEmpty())return;
- int idx = tmp.findRev("/");
+ int idx = tmp.lastIndexOf("/");
if(idx == -1)return;
tmp = tmp.left(idx);
diff --git a/src/modules/options/dialog.cpp b/src/modules/options/dialog.cpp
index 6eaf68a66..9feaf0c7c 100644
--- a/src/modules/options/dialog.cpp
+++ b/src/modules/options/dialog.cpp
@@ -195,12 +195,12 @@ KviOptionsDialog::KviOptionsDialog(QWidget * par,const QString &szGroup)
connect(m_pListView,SIGNAL(selectionChanged(KviTalListViewItem *)),this,SLOT(listViewItemSelectionChanged(KviTalListViewItem *)));
KviTalHBox * hbox = new KviTalHBox(vbox);
- vbox->setSpacing(2);
+ vbox->setSpacing(0);
vbox->setMargin(0);
m_pSearchLineEdit = new QLineEdit(hbox);
connect(m_pSearchLineEdit,SIGNAL(returnPressed()),this,SLOT(searchClicked()));
- m_pSearchButton = new KviStyledToolButton(hbox);
+ m_pSearchButton = new QToolButton(hbox);
m_pSearchButton->setUsesBigPixmap(false);
m_pSearchButton->setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SEARCH)));
connect(m_pSearchButton,SIGNAL(clicked()),this,SLOT(searchClicked()));
diff --git a/src/modules/options/instances.cpp b/src/modules/options/instances.cpp
index 51cd273c6..119149290 100644
--- a/src/modules/options/instances.cpp
+++ b/src/modules/options/instances.cpp
@@ -3503,7 +3503,11 @@ KviOptionsWidget * KviOptionsInstanceManager::getInstance(KviOptionsWidgetInstan
if(e->pWidget->parent() != par)
{
QWidget * oldPar = (QWidget *)e->pWidget->parent();
- e->pWidget->reparent(par,QPoint(0,0));
+ //e->pWidget->reparent(par,QPoint(0,0));
+ e->pWidget->setParent(par);
+ e->pWidget->setGeometry(0,0,e->pWidget->width(),e->pWidget->height());
+ //
+
delete oldPar;
}
if(e->bIsContainer)
diff --git a/src/modules/options/instances.h b/src/modules/options/instances.h
index 12f10a42c..55aca0422 100644
--- a/src/modules/options/instances.h
+++ b/src/modules/options/instances.h
@@ -54,7 +54,7 @@ typedef struct _KviOptionsWidgetInstanceEntry
bool bIsContainer;
bool bIsNotContained;
KviPointerList<KviOptionsWidgetInstanceEntry> * pChildList;
- bool bDoInsert; // a helper for KviOptionsDialog::fillListView()
+ bool bDoInsert; // a helper for KviOptionsDialog::fillTreeWidget()
} KviOptionsWidgetInstanceEntry;
diff --git a/src/modules/options/libkvioptions.cpp b/src/modules/options/libkvioptions.cpp
index cd23e31f6..a26b32f4f 100644
--- a/src/modules/options/libkvioptions.cpp
+++ b/src/modules/options/libkvioptions.cpp
@@ -103,12 +103,20 @@ static bool options_kvs_cmd_dialog(KviKvsModuleCommandCall * c)
{
if(d->parent())
{
- d->reparent(0,QPoint(0,0),true);
+ // d->reparent(0,QPoint(0,0),true);
+ d->setParent(0);
+ d->setGeometry(0,0,d->width(),d->height());
+ // inline QT3_SUPPORT void reparent(QWidget *parent, const QPoint &p, bool showIt=false)
+ //{ setParent(parent, windowFlags() & ~Qt::WindowType_Mask); setGeometry(p.x(),p.y(),width(),height()); if (showIt) show(); }
+
}
} else {
if(d->parent() != c->window()->frame()->splitter())
{
- d->reparent(c->window()->frame()->splitter(),QPoint(0,0),true);
+ // d->reparent(c->window()->frame()->splitter(),QPoint(0,0),true);
+ d->setParent(c->window()->frame()->splitter());
+ d->setGeometry(0,0,d->width(),d->height());
+ d->show();
}
}
} else {
@@ -203,7 +211,7 @@ static bool options_kvs_cmd_edit(KviKvsModuleCommandCall * c)
{
//c->warning(__tr("The editor page is already open","options"));
e->pWidget->raise();
- e->pWidget->setActiveWindow();
+ e->pWidget->activateWindow();
e->pWidget->setFocus();
return true;
}
diff --git a/src/modules/options/options_QT4_vc05.vcproj b/src/modules/options/options_QT4_vc05.vcproj
index 49876b10c..1e05435d4 100644
--- a/src/modules/options/options_QT4_vc05.vcproj
+++ b/src/modules/options/options_QT4_vc05.vcproj
@@ -42,7 +42,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="&quot;$(ProjectDir)\..\..\kvirc\ui&quot;;&quot;$(ProjectDir)\..\..\kvilib\config&quot;;&quot;$(QTDIR)\include&quot;;&quot;$(ProjectDir)\..\..\kvilib\core&quot;;&quot;$(ProjectDir)\..\..\kvilib\system&quot;;&quot;$(ProjectDir)\..\..\kvilib\ext&quot;;&quot;$(ProjectDir)\..\..\kvirc\kernel&quot;;&quot;$(ProjectDir)\..\..\kvilib\irc&quot;;&quot;$(ProjectDir)\..\..\kvilib\file&quot;;&quot;$(ProjectDir)\..\..\kvilib\tal&quot;;&quot;$(ProjectDir)\..\..\kvirc\module&quot;;&quot;$(ProjectDir)\..\..\kvirc\uparser&quot;;&quot;$(ProjectDir)\..\..\kvirc\kvs&quot;;&quot;$(ProjectDir)\..\..\kvilib\net&quot;;&quot;$(QTDIR)\include\Qt3Support&quot;;&quot;$(QTDIR)\include\QtCore\&quot;;&quot;$(QTDIR)\include\QtGui&quot;;&quot;$(QTDIR)\include\Qt&quot;;&quot;$(QTDIR)\include\QtNetwork&quot;;&quot;$(QTDIR)\include\QtXml&quot;;"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;OPTIONS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;QT3_SUPPORT;"
+ PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;OPTIONS_EXPORTS;_CRT_SECURE_NO_DEPRECATE;"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
diff --git a/src/modules/options/optw_identity.cpp b/src/modules/options/optw_identity.cpp
index 27cd424d0..75ac7e5f0 100644
--- a/src/modules/options/optw_identity.cpp
+++ b/src/modules/options/optw_identity.cpp
@@ -365,7 +365,7 @@ KviIdentityGeneralOptionsWidget::KviIdentityGeneralOptionsWidget(QWidget * paren
i = KVI_OPTION_STRING(KviOption_stringCtcpUserInfoAge).toUInt(&bOk);
if(!bOk)i = 0;
if(i > 120)i = 120;
- m_pAgeCombo->setCurrentItem(i);
+ m_pAgeCombo->setCurrentIndex(i);
hb->setStretchFactor(m_pAgeCombo,1);
@@ -479,7 +479,7 @@ KviIdentityAvatarOptionsWidget::KviIdentityAvatarOptionsWidget(QWidget * parent)
"The image also should be smaller than 800x600 pixels since<br>" \
"it will have to be viewable in everyone's monitor.","options");
- m_pUseAvatarCheck = new KviStyledCheckBox(__tr2qs_ctx("Use avatar","options"),this);
+ m_pUseAvatarCheck = new QCheckBox(__tr2qs_ctx("Use avatar","options"),this);
addWidgetToLayout(m_pUseAvatarCheck,0,0,0,0);
m_pUseAvatarCheck->setChecked(bHaveAvatar);
mergeTip(m_pUseAvatarCheck,szTip);
diff --git a/src/modules/options/optw_interfacefeatures.cpp b/src/modules/options/optw_interfacefeatures.cpp
index a5b4da725..0a8f8f1de 100644
--- a/src/modules/options/optw_interfacefeatures.cpp
+++ b/src/modules/options/optw_interfacefeatures.cpp
@@ -47,7 +47,7 @@ KviInterfaceFeaturesOptionsWidget::KviInterfaceFeaturesOptionsWidget(QWidget * p
QString szSplashDisableFile;
g_pApp->getLocalKvircDirectory(szSplashDisableFile,KviApp::Pics,"disable-splash." KVI_VERSION);
bool bDisableSplash = KviFileUtils::fileExists(szSplashDisableFile);
- m_pDisableSplash = new KviStyledCheckBox(__tr2qs_ctx("Disable splash screen","options"),this);
+ m_pDisableSplash = new QCheckBox(__tr2qs_ctx("Disable splash screen","options"),this);
addWidgetToLayout(m_pDisableSplash,0,3,0,3);
m_pDisableSplash->setChecked(bDisableSplash);
diff --git a/src/modules/options/optw_ircoutput.cpp b/src/modules/options/optw_ircoutput.cpp
index 45a43eb97..fcce3671e 100644
--- a/src/modules/options/optw_ircoutput.cpp
+++ b/src/modules/options/optw_ircoutput.cpp
@@ -40,18 +40,18 @@ KviIrcOutputOptionsWidget::KviIrcOutputOptionsWidget(QWidget * parent)
QLabel * l =new QLabel(__tr2qs_ctx("Output verbosity","options"),this);
addWidgetToLayout(l,0,0,0,0);
- m_pVerbosityCombo = new QComboBox(false,this);
+ m_pVerbosityCombo = new QComboBox(this);
addWidgetToLayout(m_pVerbosityCombo,1,0,1,0);
- m_pVerbosityCombo->insertItem(__tr2qs_ctx("Mute","options"));
- m_pVerbosityCombo->insertItem(__tr2qs_ctx("Quiet","options"));
- m_pVerbosityCombo->insertItem(__tr2qs_ctx("Normal","options"));
- m_pVerbosityCombo->insertItem(__tr2qs_ctx("Verbose","options"));
- m_pVerbosityCombo->insertItem(__tr2qs_ctx("Paranoic","options"));
+ m_pVerbosityCombo->addItem(__tr2qs_ctx("Mute","options"));
+ m_pVerbosityCombo->addItem(__tr2qs_ctx("Quiet","options"));
+ m_pVerbosityCombo->addItem(__tr2qs_ctx("Normal","options"));
+ m_pVerbosityCombo->addItem(__tr2qs_ctx("Verbose","options"));
+ m_pVerbosityCombo->addItem(__tr2qs_ctx("Paranoic","options"));
if(KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) > KVI_VERBOSITY_LEVEL_PARANOIC)
KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) = KVI_VERBOSITY_LEVEL_NORMAL;
- m_pVerbosityCombo->setCurrentItem(KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel));
+ m_pVerbosityCombo->setCurrentIndex(KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel));
KviTalGroupBox * g = addGroupBox(0,1,1,1,Qt::Horizontal,__tr2qs_ctx("Show in active window","options"));
addBoolSelector(g,__tr2qs_ctx("External messages","options"),KviOption_boolExternalMessagesToActiveWindow);
@@ -83,7 +83,7 @@ void KviIrcOutputOptionsWidget::commit()
{
KviOptionsWidget::commit();
- int i = m_pVerbosityCombo->currentItem();
+ int i = m_pVerbosityCombo->currentIndex();
if((i < 0) || (i > KVI_VERBOSITY_LEVEL_PARANOIC))i = KVI_VERBOSITY_LEVEL_NORMAL;
KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) = i;
}
diff --git a/src/modules/options/optw_ircoutput.h b/src/modules/options/optw_ircoutput.h
index 41575950a..c9f9fe76f 100644
--- a/src/modules/options/optw_ircoutput.h
+++ b/src/modules/options/optw_ircoutput.h
@@ -24,7 +24,7 @@
//
#include "kvi_optionswidget.h"
-#include "kvi_tal_listview.h"
+
class QComboBox;
diff --git a/src/modules/options/optw_mediatypes.cpp b/src/modules/options/optw_mediatypes.cpp
index 94c4e1da0..d14c4694c 100644
--- a/src/modules/options/optw_mediatypes.cpp
+++ b/src/modules/options/optw_mediatypes.cpp
@@ -44,17 +44,17 @@ static void copyMediaType(KviMediaType * dst,const KviMediaType * src)
dst->szIcon = src->szIcon;
}
-KviMediaTypeListViewItem::KviMediaTypeListViewItem(KviTalListView * w,KviMediaType * t)
-: KviTalListViewItem(w)
+KviMediaTypeTreeWidgetItem::KviMediaTypeTreeWidgetItem(KviTalTreeWidget * w,KviMediaType * t)
+: KviTalTreeWidgetItem(w)
{
copyData(t);
}
-KviMediaTypeListViewItem::~KviMediaTypeListViewItem()
+KviMediaTypeTreeWidgetItem::~KviMediaTypeTreeWidgetItem()
{
}
-void KviMediaTypeListViewItem::copyData(KviMediaType * t)
+void KviMediaTypeTreeWidgetItem::copyData(KviMediaType * t)
{
copyMediaType(&m_data,t);
setText(0,m_data.szFileMask.ptr());
@@ -67,16 +67,19 @@ KviMediaTypesOptionsWidget::KviMediaTypesOptionsWidget(QWidget * parent)
{
createLayout();
- m_pListView = new KviTalListView(this);
- m_pListView->addColumn(__tr2qs_ctx("Pattern","options"));
- m_pListView->addColumn(__tr2qs_ctx("MIME Type","options"));
- m_pListView->addColumn(__tr2qs_ctx("Description","options"));
- m_pListView->setAllColumnsShowFocus(true);
+ m_pTreeWidget = new KviTalTreeWidget(this);
+ m_pTreeWidget->setColumnCount(3);
+ QStringList columnLabels;
+ columnLabels.append(__tr2qs_ctx("Pattern","options"));
+ columnLabels.append(__tr2qs_ctx("MIME Type","options"));
+ columnLabels.append(__tr2qs_ctx("Description","options"));
+ m_pTreeWidget->setHeaderLabels(columnLabels);
+ m_pTreeWidget->setAllColumnsShowFocus(true);
+ m_pTreeWidget->setRootIsDecorated(false);
+ connect(m_pTreeWidget,SIGNAL(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)),this,SLOT(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)));
- connect(m_pListView,SIGNAL(currentChanged(KviTalListViewItem *)),this,SLOT(currentItemChanged(KviTalListViewItem *)));
-
- layout()->addWidget(m_pListView,0,0,1,3);
-// layout()->addMultiCellWidget(m_pListView,0,0,0,2);
+ layout()->addWidget(m_pTreeWidget,0,0,1,3);
+// layout()->addMultiCellWidget(m_pTreeWidget,0,0,0,2);
QLabel * l = new QLabel(__tr2qs_ctx("Description:","options"),this);
layout()->addWidget(l,1,0);
@@ -149,22 +152,22 @@ KviMediaTypesOptionsWidget::KviMediaTypesOptionsWidget(QWidget * parent)
m_pLastItem = 0;
- fillListView();
+ fillTreeWidget();
}
KviMediaTypesOptionsWidget::~KviMediaTypesOptionsWidget()
{
}
-void KviMediaTypesOptionsWidget::fillListView()
+void KviMediaTypesOptionsWidget::fillTreeWidget()
{
- m_pListView->clear();
+ m_pTreeWidget->clear();
g_pMediaManager->lock();
KviPointerList<KviMediaType> * l = g_pMediaManager->mediaTypeList();
- KviMediaTypeListViewItem * it;
+ KviMediaTypeTreeWidgetItem * it;
for(KviMediaType * t = l->first();t;t = l->next())
{
- it = new KviMediaTypeListViewItem(m_pListView,t);
+ it = new KviMediaTypeTreeWidgetItem(m_pTreeWidget,t);
}
g_pMediaManager->unlock();
enableOrDisable();
@@ -215,13 +218,13 @@ void KviMediaTypesOptionsWidget::setLineEdits()
m_pIcon->setText(m_pLastItem ? m_pLastItem->data()->szIcon.ptr() : "");
}
-void KviMediaTypesOptionsWidget::currentItemChanged(KviTalListViewItem *it)
+void KviMediaTypesOptionsWidget::currentItemChanged(KviTalTreeWidgetItem *it,KviTalTreeWidgetItem *prev)
{
saveLastItem();
- m_pLastItem = (KviMediaTypeListViewItem *)it;
+ m_pLastItem = (KviMediaTypeTreeWidgetItem *)it;
if(it)
{
- if(!it->isSelected())m_pListView->setSelected(it,true);
+ if(!it->isSelected())it->setSelected(true);
}
setLineEdits();
enableOrDisable();
@@ -231,16 +234,16 @@ void KviMediaTypesOptionsWidget::newMediaType()
{
KviMediaType empty;
empty.szDescription = __tr2qs_ctx("New Media Type","options");
- KviMediaTypeListViewItem * it = new KviMediaTypeListViewItem(m_pListView,&empty);
- m_pListView->setCurrentItem(it);
- m_pListView->setSelected(it,true);
+ KviMediaTypeTreeWidgetItem * it = new KviMediaTypeTreeWidgetItem(m_pTreeWidget,&empty);
+ m_pTreeWidget->setCurrentItem(it);
+ it->setSelected(true);
}
void KviMediaTypesOptionsWidget::delMediaType()
{
if(m_pLastItem)
{
- KviMediaTypeListViewItem * it = m_pLastItem;
+ KviMediaTypeTreeWidgetItem * it = m_pLastItem;
m_pLastItem = 0;
delete it;
}
@@ -249,15 +252,17 @@ void KviMediaTypesOptionsWidget::delMediaType()
void KviMediaTypesOptionsWidget::commit()
{
saveLastItem();
- KviMediaTypeListViewItem * it = (KviMediaTypeListViewItem *)m_pListView->firstChild();
+ KviMediaTypeTreeWidgetItem * it;// = (KviMediaTypeTreeWidgetItem *)m_pTreeWidget->firstChild();
g_pMediaManager->lock();
g_pMediaManager->clear();
- while(it)
+ //while(it)
+ for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
{
+ it=(KviMediaTypeTreeWidgetItem *)m_pTreeWidget->topLevelItem(i);
KviMediaType * t = new KviMediaType;
copyMediaType(t,it->data());
g_pMediaManager->insertMediaType(t);
- it = (KviMediaTypeListViewItem *)it->nextSibling();
+ // it = (KviMediaTypeTreeWidgetItem *)it->nextSibling();
}
g_pMediaManager->unlock();
}
diff --git a/src/modules/options/optw_mediatypes.h b/src/modules/options/optw_mediatypes.h
index 3ec91c12f..b4dafe9f2 100644
--- a/src/modules/options/optw_mediatypes.h
+++ b/src/modules/options/optw_mediatypes.h
@@ -25,17 +25,17 @@
#include "kvi_optionswidget.h"
#include "kvi_mediatype.h"
-#include "kvi_tal_listview.h"
+#include "kvi_tal_treewidget.h"
#include <QLineEdit>
#include <QPushButton>
-class KviMediaTypeListViewItem : public KviTalListViewItem
+class KviMediaTypeTreeWidgetItem : public KviTalTreeWidgetItem
{
public:
- KviMediaTypeListViewItem(KviTalListView * w,KviMediaType * t);
- ~KviMediaTypeListViewItem();
+ KviMediaTypeTreeWidgetItem(KviTalTreeWidget * w,KviMediaType * t);
+ ~KviMediaTypeTreeWidgetItem();
private:
KviMediaType m_data;
public:
@@ -57,7 +57,7 @@ public:
KviMediaTypesOptionsWidget(QWidget * parent);
~KviMediaTypesOptionsWidget();
private:
- KviTalListView * m_pListView;
+ KviTalTreeWidget * m_pTreeWidget;
QLineEdit * m_pDescription;
QLineEdit * m_pIanaType;
QLineEdit * m_pFileMask;
@@ -67,14 +67,14 @@ private:
QLineEdit * m_pRemoteExecCommandline;
QLineEdit * m_pIcon;
QPushButton * m_pDelete;
- KviMediaTypeListViewItem * m_pLastItem;
+ KviMediaTypeTreeWidgetItem * m_pLastItem;
private:
- void fillListView();
+ void fillTreeWidget();
void saveLastItem();
void enableOrDisable();
void setLineEdits();
private slots:
- void currentItemChanged(KviTalListViewItem *it);
+ void currentItemChanged(KviTalTreeWidgetItem *it,KviTalTreeWidgetItem *prev);
void newMediaType();
void delMediaType();
public:
diff --git a/src/modules/options/optw_messages.cpp b/src/modules/options/optw_messages.cpp
index 8b2be8f08..aa70d6d2e 100644
--- a/src/modules/options/optw_messages.cpp
+++ b/src/modules/options/optw_messages.cpp
@@ -413,7 +413,7 @@ KviMessageColorsOptionsWidget::KviMessageColorsOptionsWidget(QWidget * parent)
lbt = new KviTalListBoxText(m_pLevelListBox,tmpn);
}
- m_pIconButton = new KviStyledToolButton(box);
+ m_pIconButton = new QToolButton(box);
connect(m_pIconButton,SIGNAL(clicked()),this,SLOT(iconButtonClicked()));
m_pIconPopup = new KviTalPopupMenu(this);
@@ -422,7 +422,7 @@ KviMessageColorsOptionsWidget::KviMessageColorsOptionsWidget(QWidget * parent)
m_pIconPopup->insertItem(iw);
- m_pEnableLogging = new KviStyledCheckBox(__tr2qs_ctx("Log this","options"),box);
+ m_pEnableLogging = new QCheckBox(__tr2qs_ctx("Log this","options"),box);
KviTalHBox * h = new KviTalHBox(this);
addWidgetToLayout(h,0,1,3,1);
diff --git a/src/modules/options/optw_nickserv.cpp b/src/modules/options/optw_nickserv.cpp
index 864038db4..54b16ef3f 100644
--- a/src/modules/options/optw_nickserv.cpp
+++ b/src/modules/options/optw_nickserv.cpp
@@ -30,7 +30,7 @@
#include "kvi_nickserv.h"
#include "kvi_ircmask.h"
#include "kvi_tal_tooltip.h"
-#include "kvi_tal_listview.h"
+#include "kvi_tal_TreeWidget.h"
#include <QLayout>
#include <QLineEdit>
@@ -51,7 +51,7 @@ KviNickServRuleEditor::KviNickServRuleEditor(QWidget * par,bool bUseServerMaskFi
QString html_center_begin = "<center>";
QString html_center_end = "</center>";
- QGridLayout * gl = new QGridLayout(this,bUseServerMaskField ? 7 : 6,4,10,5);
+ QGridLayout * gl = new QGridLayout(this);//,bUseServerMaskField ? 7 : 6,4,10,5);
QLabel * l = new QLabel(__tr2qs_ctx("Registered NickName","options"),this);
gl->addWidget(l,0,0);
@@ -229,26 +229,28 @@ KviNickServOptionsWidget::KviNickServOptionsWidget(QWidget * parent)
KviNickServRuleSet * rs = g_pNickServRuleSet;
bool bNickServEnabled = rs ? (rs->isEnabled() && !rs->isEmpty()) : false;
- m_pNickServCheck = new KviStyledCheckBox(__tr2qs_ctx("Enable NickServ Identification","options"),this);
+ m_pNickServCheck = new QCheckBox(__tr2qs_ctx("Enable NickServ Identification","options"),this);
gl->addWidget(m_pNickServCheck,0,0,1,3);
// gl->addMultiCellWidget(m_pNickServCheck,0,0,0,2);
- KviTalToolTip::add(m_pNickServCheck,
- __tr2qs_ctx("This check enables the automatic identification with NickServ","options"));
+ KviTalToolTip::add(m_pNickServCheck,__tr2qs_ctx("This check enables the automatic identification with NickServ","options"));
m_pNickServCheck->setChecked(bNickServEnabled);
- m_pNickServListView = new KviTalListView(this);
- m_pNickServListView->setSelectionMode(KviTalListView::Single);
- m_pNickServListView->setAllColumnsShowFocus(true);
- m_pNickServListView->addColumn(__tr2qs_ctx("Nickname","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("Server mask","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("NickServ Mask","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("NickServ Request Mask","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("Identify Command","options"));
- connect(m_pNickServListView,SIGNAL(selectionChanged()),this,SLOT(enableDisableNickServControls()));
+ m_pNickServTreeWidget = new KviTalTreeWidget(this);
+ m_pNickServTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection);
+ m_pNickServTreeWidget->setAllColumnsShowFocus(true);
+ QStringList columnLabels;
+
+ columnLabels.append(__tr2qs_ctx("Nickname","options"));
+ columnLabels.append(__tr2qs_ctx("Server mask","options"));
+ columnLabels.append(__tr2qs_ctx("NickServ Mask","options"));
+ columnLabels.append(__tr2qs_ctx("NickServ Request Mask","options"));
+ columnLabels.append(__tr2qs_ctx("Identify Command","options"));
+ m_pNickServTreeWidget->setHeaderLabels(columnLabels);
+ connect(m_pNickServTreeWidget,SIGNAL(itemSelectionChanged()),this,SLOT(enableDisableNickServControls()));
- gl->addWidget(m_pNickServListView,1,0,1,3);
-// gl->addMultiCellWidget(m_pNickServListView,1,1,0,2);
- KviTalToolTip::add(m_pNickServListView,
+ gl->addWidget(m_pNickServTreeWidget,1,0,1,3);
+// gl->addMultiCellWidget(m_pNickServTreeWidget,1,1,0,2);
+ KviTalToolTip::add(m_pNickServTreeWidget,\
__tr2qs_ctx("<center>This is a list of NickServ identification rules. " \
"KVIrc will use them to model its automatic interaction with NickServ on all the networks.<br>" \
"Please be aware that this feature can cause your NickServ passwords to be stolen " \
@@ -278,7 +280,7 @@ KviNickServOptionsWidget::KviNickServOptionsWidget(QWidget * parent)
KviPointerList<KviNickServRule> * ll = rs->rules();
for(KviNickServRule * rule = ll->first();rule;rule = ll->next())
{
- (void)new KviTalListViewItem(m_pNickServListView,rule->registeredNick(),rule->serverMask(),rule->nickServMask(),rule->messageRegexp(),rule->identifyCommand());
+ (void)new KviTalTreeWidgetItem(m_pNickServTreeWidget,rule->registeredNick(),rule->serverMask(),rule->nickServMask(),rule->messageRegexp(),rule->identifyCommand());
}
}
@@ -293,7 +295,7 @@ KviNickServOptionsWidget::~KviNickServOptionsWidget()
void KviNickServOptionsWidget::editNickServRule()
{
- KviTalListViewItem * it = m_pNickServListView->currentItem();
+ KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *)m_pNickServTreeWidget->currentItem();
if(!it)return;
KviNickServRule r(it->text(0),it->text(2),it->text(3),it->text(4),it->text(1));
KviNickServRuleEditor ed(this,true);
@@ -312,12 +314,12 @@ void KviNickServOptionsWidget::addNickServRule()
KviNickServRule r;
KviNickServRuleEditor ed(this,true);
if(ed.editRule(&r))
- (void)new KviTalListViewItem(m_pNickServListView,r.registeredNick(),r.serverMask(),r.nickServMask(),r.messageRegexp(),r.identifyCommand());
+ (void)new KviTalTreeWidgetItem(m_pNickServTreeWidget,r.registeredNick(),r.serverMask(),r.nickServMask(),r.messageRegexp(),r.identifyCommand());
}
void KviNickServOptionsWidget::delNickServRule()
{
- KviTalListViewItem * it = m_pNickServListView->currentItem();
+ KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *)m_pNickServTreeWidget->currentItem();
if(!it)return;
delete it;
enableDisableNickServControls();
@@ -326,9 +328,9 @@ void KviNickServOptionsWidget::delNickServRule()
void KviNickServOptionsWidget::enableDisableNickServControls()
{
bool bEnabled = m_pNickServCheck->isChecked();
- m_pNickServListView->setEnabled(bEnabled);
+ m_pNickServTreeWidget->setEnabled(bEnabled);
m_pAddRuleButton->setEnabled(bEnabled);
- bEnabled = bEnabled && (m_pNickServListView->childCount() > 0) && m_pNickServListView->currentItem();
+ bEnabled = bEnabled && (m_pNickServTreeWidget->topLevelItemCount()) && m_pNickServTreeWidget->currentItem();
m_pDelRuleButton->setEnabled(bEnabled);
m_pEditRuleButton->setEnabled(bEnabled);
}
@@ -336,14 +338,16 @@ void KviNickServOptionsWidget::enableDisableNickServControls()
void KviNickServOptionsWidget::commit()
{
g_pNickServRuleSet->clear();
- if(m_pNickServListView->childCount() > 0)
+ if(m_pNickServTreeWidget->topLevelItemCount())
{
g_pNickServRuleSet->setEnabled(m_pNickServCheck->isChecked());
- KviTalListViewItem * it = m_pNickServListView->firstChild();
- while(it)
+ KviTalTreeWidgetItem * it;// = m_pNickServTreeWidget->firstChild();
+ for (int i=0;i<m_pNickServTreeWidget->topLevelItemCount();i++)
+// while(it)
{
+ it=(KviTalTreeWidgetItem *)m_pNickServTreeWidget->topLevelItem(i);
g_pNickServRuleSet->addRule(KviNickServRule::createInstance(it->text(0),it->text(2),it->text(3),it->text(4),it->text(1)));
- it = it->nextSibling();
+ //it = it->nextSibling();
}
}
KviOptionsWidget::commit();
diff --git a/src/modules/options/optw_nickserv.h b/src/modules/options/optw_nickserv.h
index aa3f43010..8afec3843 100644
--- a/src/modules/options/optw_nickserv.h
+++ b/src/modules/options/optw_nickserv.h
@@ -35,7 +35,7 @@ class QLineEdit;
class QPushButton;
class QCheckBox;
class KviNickServRule;
-class KviTalListView;
+class KviTalTreeWidget;
#define KVI_OPTIONS_WIDGET_ICON_KviNickServOptionsWidget KVI_SMALLICON_NICKSERV
#define KVI_OPTIONS_WIDGET_NAME_KviNickServOptionsWidget __tr2qs_no_lookup("NickServ")
@@ -72,7 +72,7 @@ public:
KviNickServOptionsWidget(QWidget * parent);
~KviNickServOptionsWidget();
protected:
- KviTalListView * m_pNickServListView;
+ KviTalTreeWidget * m_pNickServTreeWidget;
QCheckBox * m_pNickServCheck;
QPushButton * m_pAddRuleButton;
QPushButton * m_pDelRuleButton;
diff --git a/src/modules/options/optw_proxy.cpp b/src/modules/options/optw_proxy.cpp
index 67ad78039..5f83ed9b2 100644
--- a/src/modules/options/optw_proxy.cpp
+++ b/src/modules/options/optw_proxy.cpp
@@ -29,7 +29,7 @@
#include "kvi_netutils.h"
#include "kvi_settings.h"
#include "kvi_options.h"
-#include "kvi_styled_controls.h"
+//#include "kvi_styled_controls.h"
#include <kvi_tal_groupbox.h>
#include "kvi_tal_popupmenu.h"
#include "kvi_tal_tooltip.h"
@@ -40,16 +40,17 @@
#include <QCheckBox>
#include <QCursor>
#include <QToolButton>
+#include <QIcon>
-KviProxyOptionsListViewItem::KviProxyOptionsListViewItem(KviTalListView *parent,const QPixmap &pm,KviProxy * prx)
-: KviTalListViewItem(parent,prx->m_szHostname.ptr())
+KviProxyOptionsTreeWidgetItem::KviProxyOptionsTreeWidgetItem(KviTalTreeWidget *parent,const QPixmap &pm,KviProxy * prx)
+: KviTalTreeWidgetItem(parent,prx->m_szHostname.ptr())
{
- setPixmap(0,pm);
+ setIcon(0,QIcon(pm));
m_pProxyData = new KviProxy(*prx);
}
-KviProxyOptionsListViewItem::~KviProxyOptionsListViewItem()
+KviProxyOptionsTreeWidgetItem::~KviProxyOptionsTreeWidgetItem()
{
delete m_pProxyData;
}
@@ -61,34 +62,35 @@ KviProxyOptionsWidget::KviProxyOptionsWidget(QWidget * parent)
addBoolSelector(0,0,1,0,__tr2qs_ctx("Use proxy","options"),KviOption_boolUseProxyHost);
- m_pListView = new KviTalListView(this);
- addWidgetToLayout(m_pListView,0,1,0,1);
- m_pListView->addColumn(__tr2qs_ctx("Proxy","options"));
- m_pListView->setRootIsDecorated(true);
- m_pListView->setAllColumnsShowFocus(true);
- m_pListView->setSelectionMode(KviTalListView::Single);
+ m_pTreeWidget = new KviTalTreeWidget(this);
+ addWidgetToLayout(m_pTreeWidget,0,1,0,1);
+ m_pTreeWidget->addColumn(__tr2qs_ctx("Proxy","options"));
+ m_pTreeWidget->setRootIsDecorated(true);
+ m_pTreeWidget->setAllColumnsShowFocus(true);
+ m_pTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection);
- connect(m_pListView,SIGNAL(selectionChanged(KviTalListViewItem *)),
- this,SLOT(listViewItemSelectionChanged(KviTalListViewItem *)));
- connect(m_pListView,SIGNAL(rightButtonPressed(KviTalListViewItem *,const QPoint &,int)),
- this,SLOT(listViewRightButtonPressed(KviTalListViewItem *,const QPoint &,int)));
+ connect(m_pTreeWidget,SIGNAL(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)),
+ this,SLOT(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)));
+ m_pTreeWidget->setContextMenuPolicy(Qt::CustomContextMenu);
+ connect(m_pTreeWidget,SIGNAL(customContextMenuRequested(const QPoint &)),
+ this,SLOT(customContextMenuRequested(const QPoint &)));
QString tiptxt = __tr2qs_ctx("<center>This is the list of available proxy servers.<br>" \
"Right-click on the list to add or remove proxies.</center>","options");
- mergeTip(m_pListView,tiptxt);
- mergeTip(m_pListView->viewport(),tiptxt);
+ mergeTip(m_pTreeWidget,tiptxt);
+ mergeTip(m_pTreeWidget->viewport(),tiptxt);
KviTalVBox * vbox = new KviTalVBox(this);
addWidgetToLayout(vbox,1,1,1,1);
- QToolButton * tb = new KviStyledToolButton(vbox);
- tb->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)));
+ QToolButton * tb = new QToolButton(vbox);
+ tb->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY))));
tb->setAutoRaise(true);
connect(tb,SIGNAL(clicked()),this,SLOT(newProxy()));
mergeTip(tb,__tr2qs_ctx("New Proxy","options"));
- tb = new KviStyledToolButton(vbox);
- tb->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT)));
+ tb = new QToolButton(vbox);
+ tb->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT))));
//tb->setEnabled(false);
tb->setAutoRaise(true);
connect(tb,SIGNAL(clicked()),this,SLOT(removeCurrent()));
@@ -114,14 +116,14 @@ KviProxyOptionsWidget::KviProxyOptionsWidget(QWidget * parent)
m_pPassLabel = new QLabel(__tr2qs_ctx("Password:","options"),gbox);
m_pPassEdit = new QLineEdit(gbox);
m_pProtocolLabel = new QLabel(__tr2qs_ctx("Protocol:","options"),gbox);
- m_pProtocolBox = new QComboBox(false,gbox);
+ m_pProtocolBox = new QComboBox(gbox);
QStringList l;
KviProxy::getSupportedProtocolNames(l);
- m_pProtocolBox->insertStringList(l);
+ m_pProtocolBox->addItems(l);
- m_pIpV6Check = new KviStyledCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),gbox);
+ m_pIpV6Check = new QCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),gbox);
connect(m_pIpV6Check,SIGNAL(toggled(bool)),this,SLOT(ipV6CheckToggled(bool)));
#ifndef COMPILE_IPV6_SUPPORT
m_pIpV6Check->setEnabled(false);
@@ -148,26 +150,26 @@ void KviProxyOptionsWidget::ipV6CheckToggled(bool bEnabled)
void KviProxyOptionsWidget::fillProxyList()
{
- KviProxyOptionsListViewItem * prx;
+ KviProxyOptionsTreeWidgetItem * prx;
KviPointerList<KviProxy> * l = g_pProxyDataBase->proxyList();
for(KviProxy * p = l->first();p;p = l->next())
{
- prx = new KviProxyOptionsListViewItem(m_pListView,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)),p);
+ prx = new KviProxyOptionsTreeWidgetItem(m_pTreeWidget,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)),p);
if(p == g_pProxyDataBase->currentProxy())
{
- m_pListView->setSelected(prx,true);
- m_pListView->ensureItemVisible(prx);
+ prx->setSelected(true);
+ m_pTreeWidget->scrollToItem(prx);
}
}
- if(!(g_pProxyDataBase->currentProxy()))listViewItemSelectionChanged(0);
+ if(!(g_pProxyDataBase->currentProxy()))currentItemChanged(0,0);
}
-void KviProxyOptionsWidget::listViewItemSelectionChanged(KviTalListViewItem *it)
+void KviProxyOptionsWidget::currentItemChanged(KviTalTreeWidgetItem *it,KviTalTreeWidgetItem *prev)
{
if(m_pLastEditedItem)saveLastItem();
- m_pLastEditedItem = (KviProxyOptionsListViewItem *)it;
+ m_pLastEditedItem = (KviProxyOptionsTreeWidgetItem *)it;
m_pProxyLabel->setEnabled(m_pLastEditedItem);
m_pProxyEdit->setEnabled(m_pLastEditedItem);
@@ -193,10 +195,10 @@ void KviProxyOptionsWidget::listViewItemSelectionChanged(KviTalListViewItem *it)
for(int i=0;i<m_pProtocolBox->count();i++)
{
- KviStr txt = m_pProtocolBox->text(i);
+ KviStr txt = m_pProtocolBox->itemText(i);
if(kvi_strEqualCI(m_pLastEditedItem->m_pProxyData->protocolName(),txt.ptr()))
{
- m_pProtocolBox->setCurrentItem(i);
+ m_pProtocolBox->setCurrentIndex(i);
break;
}
}
@@ -288,18 +290,21 @@ void KviProxyOptionsWidget::commit()
{
saveLastItem();
g_pProxyDataBase->clear();
- KviProxyOptionsListViewItem * it = (KviProxyOptionsListViewItem *)m_pListView->firstChild();
- while(it)
+ KviProxyOptionsTreeWidgetItem * it;// = (KviProxyOptionsTreeWidgetItem *)m_pTreeWidget->topLevelItemCount();
+
+ //while(it)
+ for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
{
- KviStr tmp = it->text(0);
- if(tmp.hasData())
+ it=(KviProxyOptionsTreeWidgetItem *)m_pTreeWidget->topLevelItem(i);
+ QString tmp = it->text(0);
+ if(!tmp.isEmpty())
{
- KviProxy * prx = new KviProxy(*(((KviProxyOptionsListViewItem *)it)->m_pProxyData));
+ KviProxy * prx = new KviProxy(*(((KviProxyOptionsTreeWidgetItem *)it)->m_pProxyData));
g_pProxyDataBase->insertProxy(prx);
if(it == m_pLastEditedItem)g_pProxyDataBase->setCurrentProxy(prx);
}
- it = (KviProxyOptionsListViewItem *)it->nextSibling();
+ //it = (KviProxyOptionsTreeWidgetItem *)it->nextSibling();
}
if(g_pProxyDataBase->currentProxy() == 0)
@@ -310,8 +315,9 @@ void KviProxyOptionsWidget::commit()
KviOptionsWidget::commit();
}
-void KviProxyOptionsWidget::listViewRightButtonPressed(KviTalListViewItem *it,const QPoint &pnt,int col)
+void KviProxyOptionsWidget::customContextMenuRequested(const QPoint &pos)
{
+ KviTalTreeWidgetItem *it=(KviTalTreeWidgetItem *)m_pTreeWidget->itemAt(pos);
m_pContextPopup->clear();
m_pContextPopup->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)),__tr2qs_ctx("&New Proxy","options"),this,SLOT(newProxy()));
m_pContextPopup->setItemEnabled(m_pContextPopup->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT)),__tr2qs_ctx("Re&move Proxy","options"),this,SLOT(removeCurrent())),it);
@@ -321,9 +327,9 @@ void KviProxyOptionsWidget::listViewRightButtonPressed(KviTalListViewItem *it,co
void KviProxyOptionsWidget::newProxy()
{
KviProxy prx;
- KviProxyOptionsListViewItem * it = new KviProxyOptionsListViewItem(m_pListView,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)),&prx);
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ KviProxyOptionsTreeWidgetItem * it = new KviProxyOptionsTreeWidgetItem(m_pTreeWidget,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PROXY)),&prx);
+ it->setSelected(true);
+ m_pTreeWidget->scrollToItem(it);
}
void KviProxyOptionsWidget::removeCurrent()
@@ -332,13 +338,13 @@ void KviProxyOptionsWidget::removeCurrent()
{
delete m_pLastEditedItem;
m_pLastEditedItem = 0;
- KviTalListViewItem * it = m_pListView->firstChild();
+ KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *)m_pTreeWidget->topLevelItem(0);
if(it)
{
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ it->setSelected(true);
+ //m_pTreeWidget->ensureItemVisible(it);
} else {
- listViewItemSelectionChanged(0);
+ currentItemChanged(0,0);
}
}
}
diff --git a/src/modules/options/optw_proxy.h b/src/modules/options/optw_proxy.h
index 143957973..9f6ced14f 100644
--- a/src/modules/options/optw_proxy.h
+++ b/src/modules/options/optw_proxy.h
@@ -24,7 +24,7 @@
//
#include "kvi_optionswidget.h"
-#include "kvi_tal_listview.h"
+#include "kvi_tal_treewidget.h"
class QLabel;
class QLineEdit;
@@ -37,11 +37,11 @@ class KviProxyDataBase;
extern KVIRC_API KviProxyDataBase * g_pProxyDataBase;
-class KviProxyOptionsListViewItem : public KviTalListViewItem
+class KviProxyOptionsTreeWidgetItem : public KviTalTreeWidgetItem
{
public:
- KviProxyOptionsListViewItem(KviTalListView *parent,const QPixmap &pm,KviProxy * prx);
- ~KviProxyOptionsListViewItem();
+ KviProxyOptionsTreeWidgetItem(KviTalTreeWidget *parent,const QPixmap &pm,KviProxy * prx);
+ ~KviProxyOptionsTreeWidgetItem();
public:
KviProxy * m_pProxyData;
};
@@ -60,7 +60,7 @@ public:
KviProxyOptionsWidget(QWidget * parent);
~KviProxyOptionsWidget();
protected:
- KviTalListView * m_pListView;
+ KviTalTreeWidget * m_pTreeWidget;
QLabel * m_pProxyLabel;
QLineEdit * m_pProxyEdit;
QLabel * m_pIpLabel;
@@ -75,14 +75,14 @@ protected:
QComboBox * m_pProtocolBox;
KviTalPopupMenu * m_pContextPopup;
QCheckBox * m_pIpV6Check;
- KviProxyOptionsListViewItem * m_pLastEditedItem;
+ KviProxyOptionsTreeWidgetItem * m_pLastEditedItem;
private:
void fillProxyList();
void saveLastItem();
protected slots:
- void listViewItemSelectionChanged(KviTalListViewItem *it);
- void listViewRightButtonPressed(KviTalListViewItem *it,const QPoint &pnt,int col);
+ void currentItemChanged(KviTalTreeWidgetItem *it,KviTalTreeWidgetItem *prev);
+ void customContextMenuRequested(const QPoint &pnt);
void newProxy();
void removeCurrent();
void ipV6CheckToggled(bool bEnabled);
diff --git a/src/modules/options/optw_servers.cpp b/src/modules/options/optw_servers.cpp
index 61175c157..972df5712 100644
--- a/src/modules/options/optw_servers.cpp
+++ b/src/modules/options/optw_servers.cpp
@@ -63,11 +63,14 @@
#include <QComboBox>
#include <QButtonGroup>
#include <QInputDialog>
+#include <QIcon>
KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n)
- : QDialog(par,"network_details",true)
+ : QDialog(par)
{
+ setModal(true);
+ setObjectName("network_details");
m_pOnConnectEditor=0;
m_pOnLoginEditor=0;
@@ -81,7 +84,7 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
m_pAutoConnectCheck=0;
- m_pNickServListView=0;
+ m_pNickServTreeWidget=0;
m_pNickServCheck=0;
m_pAddRuleButton=0;
m_pDelRuleButton=0;
@@ -92,7 +95,7 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
QGridLayout * g = new QGridLayout(this);
setWindowTitle(__tr2qs_ctx("Network Details","options"));
- setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)));
+ setWindowIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD))));
QString szTmp = "<font size=\"+1\"><b>";
szTmp += n->name();
@@ -138,7 +141,7 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
l = new QLabel(__tr2qs_ctx("Nickname:","options"),gbox);
m_pNickEditor = new QLineEdit(gbox);
- QValidator * v = new QRegExpValidator(QRegExp("[^-0-9 ][^ ]*","options"),gbox);
+ QValidator * v = new QRegExpValidator(QRegExp("[^-0-9 ][^ ]*",Qt::CaseSensitive),gbox);
m_pNickEditor->setValidator(v);
m_pNickEditor->setText(n->nickName());
KviTalToolTip::add(m_pNickEditor,__tr2qs_ctx("<center>You can specify a \"special\" <b>nickname</b> that will be used to log in to the servers on this network.<br>" \
@@ -152,7 +155,7 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
l = new QLabel(__tr2qs_ctx("Encoding:","options"),tab);
gl->addWidget(l,1,0);
- m_pEncodingEditor = new QComboBox(false,tab);
+ m_pEncodingEditor = new QComboBox(tab);
m_pEncodingEditor->setDuplicatesEnabled(false);
gl->addWidget(m_pEncodingEditor,1,1);
KviTalToolTip::add(m_pEncodingEditor,__tr2qs_ctx("<center>This box allows you to choose the preferred encoding for the servers in this network. " \
@@ -163,19 +166,19 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
int current = 0;
KviLocale::EncodingDescription * d = KviLocale::encodingDescription(i);
QString tmp;
- m_pEncodingEditor->insertItem(__tr2qs_ctx("Use System Encoding","options"));
+ m_pEncodingEditor->addItem(__tr2qs_ctx("Use System Encoding","options"));
while(d->szName)
{
KviQString::sprintf(tmp,"%s (%s)",d->szName,d->szDescription);
- m_pEncodingEditor->insertItem(tmp);
+ m_pEncodingEditor->insertItem(m_pEncodingEditor->count(),tmp);
if(KviQString::equalCI(d->szName,n->encoding()))current = i + 1;
i = i + 1;
d = KviLocale::encodingDescription(i);
}
- m_pEncodingEditor->setCurrentItem(current);
+ m_pEncodingEditor->setCurrentIndex(current);
- m_pAutoConnectCheck = new KviStyledCheckBox(__tr2qs_ctx("Connect to this network at startup","options"),tab);
+ m_pAutoConnectCheck = new QCheckBox(__tr2qs_ctx("Connect to this network at startup","options"),tab);
m_pAutoConnectCheck->setChecked(n->autoConnect());
gl->addWidget(m_pAutoConnectCheck,2,0,1,2);
// gl->addMultiCellWidget(m_pAutoConnectCheck,2,2,0,1);
@@ -250,24 +253,27 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
KviNickServRuleSet * rs = n->nickServRuleSet();
bool bNickServEnabled = rs ? (rs->isEnabled() && !rs->isEmpty()) : false;
- m_pNickServCheck = new KviStyledCheckBox(__tr2qs_ctx("Enable NickServ Identification","options"),tab);
+ m_pNickServCheck = new QCheckBox(__tr2qs_ctx("Enable NickServ Identification","options"),tab);
gl->addWidget(m_pNickServCheck,0,0,1,3);
// gl->addMultiCellWidget(m_pNickServCheck,0,0,0,2);
KviTalToolTip::add(m_pNickServCheck,
__tr2qs_ctx("This check enables the automatic identification with NickServ","options"));
m_pNickServCheck->setChecked(bNickServEnabled);
- m_pNickServListView = new KviTalListView(tab);
- m_pNickServListView->setSelectionMode(KviTalListView::Single);
- m_pNickServListView->setAllColumnsShowFocus(true);
- m_pNickServListView->addColumn(__tr2qs_ctx("Nickname","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("NickServ Mask","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("NickServ Request Mask","options"));
- m_pNickServListView->addColumn(__tr2qs_ctx("Identify Command","options"));
- connect(m_pNickServListView,SIGNAL(selectionChanged()),this,SLOT(enableDisableNickServControls()));
- gl->addWidget(m_pNickServListView,1,0,1,3);
-//// gl->addMultiCellWidget(m_pNickServListView,1,1,0,2);
- KviTalToolTip::add(m_pNickServListView,
+ m_pNickServTreeWidget = new KviTalTreeWidget(tab);
+ m_pNickServTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection);
+ m_pNickServTreeWidget->setAllColumnsShowFocus(true);
+ m_pNickServTreeWidget->setColumnCount(4);
+ QStringList columnLabels;
+ columnLabels.append(__tr2qs_ctx("Nickname","options"));
+ columnLabels.append(__tr2qs_ctx("NickServ Mask","options"));
+ columnLabels.append(__tr2qs_ctx("NickServ Request Mask","options"));
+ columnLabels.append(__tr2qs_ctx("Identify Command","options"));
+ m_pNickServTreeWidget->setHeaderLabels(columnLabels);
+ connect(m_pNickServTreeWidget,SIGNAL(itemSelectionChanged()),this,SLOT(enableDisableNickServControls()));
+ gl->addWidget(m_pNickServTreeWidget,1,0,1,3);
+//// gl->addMultiCellWidget(m_pNickServTreeWidget,1,1,0,2);
+ KviTalToolTip::add(m_pNickServTreeWidget,
__tr2qs_ctx("<center>This is a list of NickServ identification rules. " \
"KVIrc will use them to model its automatic interaction with NickServ on this network.<br>" \
"Please be aware that this feature can cause your NickServ passwords to be stolen " \
@@ -295,7 +301,7 @@ KviNetworkDetailsWidget::KviNetworkDetailsWidget(QWidget * par,KviIrcNetwork * n
KviPointerList<KviNickServRule> * ll = rs->rules();
for(KviNickServRule * rule = ll->first();rule;rule = ll->next())
{
- (void)new KviTalListViewItem(m_pNickServListView,rule->registeredNick(),rule->nickServMask(),rule->messageRegexp(),rule->identifyCommand());
+ (void)new KviTalTreeWidgetItem(m_pNickServTreeWidget,rule->registeredNick(),rule->nickServMask(),rule->messageRegexp(),rule->identifyCommand());
}
}
@@ -331,7 +337,7 @@ KviNetworkDetailsWidget::~KviNetworkDetailsWidget()
void KviNetworkDetailsWidget::editNickServRule()
{
- KviTalListViewItem * it = m_pNickServListView->currentItem();
+ KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *) m_pNickServTreeWidget->currentItem();
if(!it)return;
KviNickServRule r(it->text(0),it->text(1),it->text(2),it->text(3));
KviNickServRuleEditor ed(this,false);
@@ -349,12 +355,12 @@ void KviNetworkDetailsWidget::addNickServRule()
KviNickServRule r;
KviNickServRuleEditor ed(this,false);
if(ed.editRule(&r))
- (void)new KviTalListViewItem(m_pNickServListView,r.registeredNick(),r.nickServMask(),r.messageRegexp(),r.identifyCommand());
+ (void)new KviTalTreeWidgetItem(m_pNickServTreeWidget,r.registeredNick(),r.nickServMask(),r.messageRegexp(),r.identifyCommand());
}
void KviNetworkDetailsWidget::delNickServRule()
{
- KviTalListViewItem * it = m_pNickServListView->currentItem();
+ KviTalTreeWidgetItem * it = (KviTalTreeWidgetItem *)m_pNickServTreeWidget->currentItem();
if(!it)return;
delete it;
enableDisableNickServControls();
@@ -363,9 +369,9 @@ void KviNetworkDetailsWidget::delNickServRule()
void KviNetworkDetailsWidget::enableDisableNickServControls()
{
bool bEnabled = m_pNickServCheck->isChecked();
- m_pNickServListView->setEnabled(bEnabled);
+ m_pNickServTreeWidget->setEnabled(bEnabled);
m_pAddRuleButton->setEnabled(bEnabled);
- bEnabled = bEnabled && (m_pNickServListView->childCount() > 0) && m_pNickServListView->currentItem();
+ bEnabled = bEnabled && (m_pNickServTreeWidget->topLevelItemCount()) && m_pNickServTreeWidget->currentItem();
m_pDelRuleButton->setEnabled(bEnabled);
m_pEditRuleButton->setEnabled(bEnabled);
}
@@ -379,26 +385,28 @@ void KviNetworkDetailsWidget::fillData(KviIrcNetwork * n)
if(m_pAutoConnectCheck)
n->setAutoConnect(m_pAutoConnectCheck->isChecked());
if(m_pEncodingEditor)
- if(m_pEncodingEditor->currentItem() <= 0)n->setEncoding(QString::null);
+ if(m_pEncodingEditor->currentIndex() <= 0)n->setEncoding(QString::null);
else {
- KviLocale::EncodingDescription * d = KviLocale::encodingDescription(m_pEncodingEditor->currentItem() - 1);
+ KviLocale::EncodingDescription * d = KviLocale::encodingDescription(m_pEncodingEditor->currentIndex() - 1);
n->setEncoding(d->szName);
}
if(m_pChannelListSelector)
m_pChannelListSelector->commit();
if(m_lstChannels.isEmpty())n->setAutoJoinChannelList(0);
else n->setAutoJoinChannelList(new QStringList(m_lstChannels));
- if(m_pNickServListView)
+ if(m_pNickServTreeWidget)
{
- if(m_pNickServListView->childCount() > 0)
+ if(m_pNickServTreeWidget->topLevelItemCount() > 0)
{
KviNickServRuleSet * rs = KviNickServRuleSet::createInstance();
rs->setEnabled(m_pNickServCheck->isChecked());
- KviTalListViewItem * it = m_pNickServListView->firstChild();
- while(it)
+ KviTalTreeWidgetItem * it;// = (KviTalTreeWidgetItem *)m_pNickServTreeWidget->firstChild();
+ for (int i=0;i<m_pNickServTreeWidget->topLevelItemCount();i++)
+ //while(it)
{
+ it=(KviTalTreeWidgetItem *) m_pNickServTreeWidget->topLevelItem(i);
rs->addRule(KviNickServRule::createInstance(it->text(0),it->text(1),it->text(2),it->text(3)));
- it = it->nextSibling();
+ // it = it->nextSibling();
}
n->setNickServRuleSet(rs);
} else n->setNickServRuleSet(0);
@@ -419,13 +427,15 @@ void KviNetworkDetailsWidget::fillData(KviIrcNetwork * n)
KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
- : QDialog(par,"server_details",true)
+ : QDialog(par)//,"server_details",true)
{
+ setModal(true);
+ setObjectName("server_details");
m_szHostname = s->hostName();
QGridLayout * g = new QGridLayout(this);
setWindowTitle(__tr2qs_ctx("Server Details","options"));
- setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)));
+ setWindowIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER))));
m_pHeaderLabel = new QLabel("",this); // the text will be set later
m_pHeaderLabel->setFrameStyle(QFrame::Raised | QFrame::StyledPanel);
@@ -488,7 +498,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
gbox = new KviTalGroupBox(Qt::Horizontal,__tr2qs_ctx("User Mode","options"),tab);
gl->addWidget(gbox,1,0);
- m_pUseDefaultInitUMode = new KviStyledCheckBox(__tr2qs_ctx("Use default user mode","options"),gbox);
+ m_pUseDefaultInitUMode = new QCheckBox(__tr2qs_ctx("Use default user mode","options"),gbox);
KviTalToolTip::add(m_pUseDefaultInitUMode,__tr2qs_ctx("<center>If this is enabled, the global initial <b>user mode</b> (configured from"\
" the identity dialog) will be used. If disabled, you can configure an initial user mode for this server","options"));
bool bHasUmode = !(s->initUMode().isEmpty());
@@ -496,17 +506,17 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
m_pUseDefaultInitUMode->setChecked(!bHasUmode);
connect(m_pUseDefaultInitUMode,SIGNAL(toggled(bool)),this,SLOT(useDefaultInitUModeToggled(bool)));
- m_pIMode = new KviStyledCheckBox(__tr2qs_ctx("Invisible (+i)","options"),gbox);
+ m_pIMode = new QCheckBox(__tr2qs_ctx("Invisible (+i)","options"),gbox);
m_pIMode->setEnabled(bHasUmode);
- m_pIMode->setChecked(bHasUmode ? s->initUMode().contains('i',false) : szDefUMode.contains('i',false));
+ m_pIMode->setChecked(bHasUmode ? s->initUMode().contains('i',Qt::CaseInsensitive) : szDefUMode.contains('i',Qt::CaseInsensitive));
- m_pSMode = new KviStyledCheckBox(__tr2qs_ctx("Server notices (+s)","options"),gbox);
+ m_pSMode = new QCheckBox(__tr2qs_ctx("Server notices (+s)","options"),gbox);
m_pSMode->setEnabled(bHasUmode);
- m_pSMode->setChecked(bHasUmode ? s->initUMode().contains('s',false) : szDefUMode.contains('s',false));
+ m_pSMode->setChecked(bHasUmode ? s->initUMode().contains('s',Qt::CaseInsensitive) : szDefUMode.contains('s',Qt::CaseInsensitive));
- m_pWMode = new KviStyledCheckBox(__tr2qs_ctx("Wallops (+w)","options"),gbox);
+ m_pWMode = new QCheckBox(__tr2qs_ctx("Wallops (+w)","options"),gbox);
m_pWMode->setEnabled(bHasUmode);
- m_pWMode->setChecked(bHasUmode ? s->initUMode().contains('w',false) : szDefUMode.contains('w',false));
+ m_pWMode->setChecked(bHasUmode ? s->initUMode().contains('w',Qt::CaseInsensitive) : szDefUMode.contains('w',Qt::CaseInsensitive));
l = new QLabel("",tab);
gl->addWidget(l,2,0);
@@ -558,7 +568,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
#endif
}
- m_pCacheIpCheck = new KviStyledCheckBox(__tr2qs_ctx("Cache IP address","options"),tab);
+ m_pCacheIpCheck = new QCheckBox(__tr2qs_ctx("Cache IP address","options"),tab);
gl->addWidget(m_pCacheIpCheck,2,0,1,2);
// gl->addMultiCellWidget(m_pCacheIpCheck,2,2,0,1);
KviTalToolTip::add(m_pCacheIpCheck,__tr2qs_ctx("<center>This check will enable <b>IP address caching</b> for this server:<br>" \
@@ -570,7 +580,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
m_pCacheIpCheck->setChecked(s->cacheIp());
- m_pUseIPV6Check = new KviStyledCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),tab);
+ m_pUseIPV6Check = new QCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),tab);
gl->addWidget(m_pUseIPV6Check,3,0,1,2);
// gl->addMultiCellWidget(m_pUseIPV6Check,3,3,0,1);
#ifdef COMPILE_IPV6_SUPPORT
@@ -583,7 +593,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
KviTalToolTip::add(m_pUseIPV6Check,__tr2qs_ctx("<center>This check identifies IPv6 servers.<br>If enabled, KVIrc will attempt to use the IPv6 protocol " \
"(thus your OS <b>must</b> have a working IPv6 stack and you <b>must</b> have an IPv6 connection).</center>","options"));
- m_pUseSSLCheck = new KviStyledCheckBox(__tr2qs_ctx("Use SSL protocol","options"),tab);
+ m_pUseSSLCheck = new QCheckBox(__tr2qs_ctx("Use SSL protocol","options"),tab);
gl->addWidget(m_pUseSSLCheck,4,0,1,2);
// gl->addMultiCellWidget(m_pUseSSLCheck,4,4,0,1);
KviTalToolTip::add(m_pUseSSLCheck,__tr2qs_ctx("<center>This check will cause the connection to use the <b>Secure Socket Layer</b> " \
@@ -594,7 +604,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
m_pUseSSLCheck->setChecked(s->useSSL());
- m_pUseAutoConnect = new KviStyledCheckBox(__tr2qs_ctx("Connect to this server at startup","options"),tab);
+ m_pUseAutoConnect = new QCheckBox(__tr2qs_ctx("Connect to this server at startup","options"),tab);
m_pUseAutoConnect->setChecked(s->autoConnect());
gl->addWidget(m_pUseAutoConnect,5,0,1,2);
@@ -603,7 +613,7 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
l = new QLabel(__tr2qs_ctx("Encoding:","options"),tab);
gl->addWidget(l,6,0);
- m_pEncodingEditor = new QComboBox(false,tab);
+ m_pEncodingEditor = new QComboBox(tab);
m_pEncodingEditor->setDuplicatesEnabled(false);
gl->addWidget(m_pEncodingEditor,6,1);
KviTalToolTip::add(m_pEncodingEditor,__tr2qs_ctx("<center>This box allows you to choose the preferred encoding for this sever. " \
@@ -614,26 +624,27 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
int current = 0;
KviLocale::EncodingDescription * d = KviLocale::encodingDescription(i);
QString tmp;
- m_pEncodingEditor->insertItem(__tr2qs_ctx("Use Network Encoding","options"));
+ m_pEncodingEditor->addItem(__tr2qs_ctx("Use Network Encoding","options"));
while(d->szName)
{
KviQString::sprintf(tmp,"%s (%s)",d->szName,d->szDescription);
- m_pEncodingEditor->insertItem(tmp);
+ m_pEncodingEditor->insertItem(m_pEncodingEditor->count(),tmp);
if(KviQString::equalCI(d->szName,s->encoding()))current = i + 1;
i = i + 1;
d = KviLocale::encodingDescription(i);
}
- m_pEncodingEditor->setCurrentItem(current);
+ m_pEncodingEditor->setCurrentIndex(current);
l = new QLabel(__tr2qs_ctx("Link filter:","options"),tab);
gl->addWidget(l,7,0);
- m_pLinkFilterEditor = new QComboBox(true,tab);
+ m_pLinkFilterEditor = new QComboBox(tab);
+ m_pLinkFilterEditor->setEditable(true);
m_pLinkFilterEditor->setDuplicatesEnabled(false);
gl->addWidget(m_pLinkFilterEditor,7,1);
- m_pLinkFilterEditor->insertItem("");
+ m_pLinkFilterEditor->addItem("");
g_pModuleManager->loadModulesByCaps("linkfilter");
KviModuleExtensionDescriptorList * mexl = KviModuleExtensionManager::instance()->getExtensionList("linkfilter");
@@ -643,16 +654,23 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
if(mexl)
{
for(KviModuleExtensionDescriptor * d = mexl->first();d;d = mexl->next())
- m_pLinkFilterEditor->insertItem(d->name().ptr());
+ m_pLinkFilterEditor->addItem(d->name().ptr());
} else {
if(!s->linkFilter().isEmpty())
- m_pLinkFilterEditor->insertItem(s->linkFilter());
+ m_pLinkFilterEditor->addItem(s->linkFilter());
}
if(!s->linkFilter().isEmpty())
- m_pLinkFilterEditor->setCurrentText(s->linkFilter());
+ {
+ //m_pLinkFilterEditor->setCurrentText(s->linkFilter());
+ int i = m_pLinkFilterEditor->findText(s->linkFilter());
+ if (i != -1)
+ m_pLinkFilterEditor->setCurrentIndex(i);
+ else
+ m_pLinkFilterEditor->setEditText(s->linkFilter());
+ }
else
- m_pLinkFilterEditor->setCurrentText("");
+ m_pLinkFilterEditor->setCurrentIndex(0);
KviTalToolTip::add(m_pLinkFilterEditor,__tr2qs_ctx("<center>This field specifies the name of a module that exports a link filter for this type of server.<br>" \
@@ -678,16 +696,16 @@ KviServerDetailsWidget::KviServerDetailsWidget(QWidget * par,KviIrcServer * s)
"If this field is set in \"Default\" KVirc will use global proxy settings, if it is set in \"Direct connection\" " \
"KVirc will connect to this server without proxy. You can define new proxy server in global options' \"Proxy servers\" menu.</center>","options"));
- m_pProxyEditor->insertItem(__tr2qs_ctx("Default","options"));
- m_pProxyEditor->insertItem(__tr2qs_ctx("Direct connection","options"));
+ m_pProxyEditor->addItem(__tr2qs_ctx("Default","options"));
+ m_pProxyEditor->addItem(__tr2qs_ctx("Direct connection","options"));
KviPointerList<KviProxy> * proxylist = g_pProxyDataBase->proxyList();
for(KviProxy * p = proxylist->first();p;p = proxylist->next())
{
- m_pProxyEditor->insertItem(QString("%1:%2").arg(p->hostname()).arg(p->port()));
+ m_pProxyEditor->insertItem(m_pProxyEditor->count(),QString("%1:%2").arg(p->hostname()).arg(p->port()));
}
if(m_pProxyEditor->count() > (s->proxy()+2))
- m_pProxyEditor->setCurrentItem(s->proxy()+2);
+ m_pProxyEditor->setCurrentIndex(s->proxy()+2);
l = new QLabel("",tab);
@@ -819,9 +837,9 @@ void KviServerDetailsWidget::fillData(KviIrcServer * s)
if(m_pLinkFilterEditor)
s->setLinkFilter(m_pLinkFilterEditor->lineEdit()->text());
if(m_pEncodingEditor)
- if(m_pEncodingEditor->currentItem() <= 0)s->m_szEncoding = "";
+ if(m_pEncodingEditor->currentIndex() <= 0)s->m_szEncoding = "";
else {
- KviLocale::EncodingDescription * d = KviLocale::encodingDescription(m_pEncodingEditor->currentItem() - 1);
+ KviLocale::EncodingDescription * d = KviLocale::encodingDescription(m_pEncodingEditor->currentIndex() - 1);
s->m_szEncoding = d->szName;
}
s->setIpAddress("");
@@ -908,7 +926,7 @@ void KviServerDetailsWidget::fillData(KviIrcServer * s)
if(m_pUseAutoConnect)
s->setAutoConnect(m_pUseAutoConnect->isChecked());
if(m_pProxyEditor)
- s->setProxy(m_pProxyEditor->currentItem()-2);
+ s->setProxy(m_pProxyEditor->currentIndex()-2);
}
void KviServerDetailsWidget::useDefaultInitUModeToggled(bool b)
@@ -921,33 +939,33 @@ void KviServerDetailsWidget::useDefaultInitUModeToggled(bool b)
// kvi_app.cpp
extern KVIRC_API KviIrcServerDataBase * g_pIrcServerDataBase;
-KviServerOptionsListViewItem::KviServerOptionsListViewItem(KviTalListView *parent,const QPixmap &pm,const KviIrcNetwork *n)
- : KviTalListViewItem(parent)
+KviServerOptionsTreeWidgetItem::KviServerOptionsTreeWidgetItem(KviTalTreeWidget *parent,const QPixmap &pm,const KviIrcNetwork *n)
+ : KviTalTreeWidgetItem(parent)
{
- setPixmap(0,pm);
+ setIcon(0,QIcon(pm));
m_pServerData = 0;
m_pNetworkData = new KviIrcNetwork(*n);
setText(0,n->name());
setText(1,n->description());
}
-KviServerOptionsListViewItem::KviServerOptionsListViewItem(KviTalListViewItem *parent,const QPixmap &pm,const KviIrcServer *s)
- : KviTalListViewItem(parent)
+KviServerOptionsTreeWidgetItem::KviServerOptionsTreeWidgetItem(KviTalTreeWidgetItem *parent,const QPixmap &pm,const KviIrcServer *s)
+ : KviTalTreeWidgetItem(parent)
{
- setPixmap(0,pm);
+ setIcon(0,QIcon(pm));
m_pServerData = new KviIrcServer(*s);
setText(0,s->hostName());
setText(1,s->description());
m_pNetworkData = 0;
}
-KviServerOptionsListViewItem::~KviServerOptionsListViewItem()
+KviServerOptionsTreeWidgetItem::~KviServerOptionsTreeWidgetItem()
{
if(m_pServerData)delete m_pServerData;
if(m_pNetworkData)delete m_pNetworkData;
}
-void KviServerOptionsListViewItem::updateVisibleStrings()
+void KviServerOptionsTreeWidgetItem::updateVisibleStrings()
{
if(m_pNetworkData)
{
@@ -978,43 +996,53 @@ KviServerOptionsWidget::KviServerOptionsWidget(QWidget * parent)
m_pNetworkDetailsDialog = 0;
m_pImportFilter = 0;
- m_pListView = new KviTalListView(this);
- addWidgetToLayout(m_pListView,0,0,0,0);
- m_pListView->addColumn(__tr2qs_ctx("Server","options"));
- m_pListView->addColumn(__tr2qs_ctx("Description","options"));
- m_pListView->setRootIsDecorated(true);
- m_pListView->setAllColumnsShowFocus(true);
- m_pListView->setSelectionMode(KviTalListView::Single);
- connect(m_pListView,SIGNAL(selectionChanged(KviTalListViewItem *)),
- this,SLOT(listViewItemSelectionChanged(KviTalListViewItem *)));
- connect(m_pListView,SIGNAL(rightButtonPressed(KviTalListViewItem *,const QPoint &,int)),
- this,SLOT(listViewRightButtonPressed(KviTalListViewItem *,const QPoint &,int)));
- connect(m_pListView,SIGNAL(doubleClicked(KviTalListViewItem*, const QPoint&, int )),
- this,SLOT(detailsClicked()));
+ m_pTreeWidget = new KviTalTreeWidget(this);
+ addWidgetToLayout(m_pTreeWidget,0,0,0,0);
+ m_pTreeWidget->setColumnCount(2);
+ m_pTreeWidget->setMinimumWidth(500);
+ QStringList columLabels;
+ columLabels.append(__tr2qs_ctx("Server","options"));
+ columLabels.append(__tr2qs_ctx("Description","options"));
+ m_pTreeWidget->setColumnWidth(0,150);
+ m_pTreeWidget->setColumnWidth(1,150);
+
+ m_pTreeWidget->setHeaderLabels(columLabels);
+ m_pTreeWidget->setRootIsDecorated(true);
+ m_pTreeWidget->setAllColumnsShowFocus(true);
+ m_pTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection);
+ m_pTreeWidget->setContextMenuPolicy(Qt::CustomContextMenu);
+ connect(m_pTreeWidget,SIGNAL(customContextMenuRequested(const QPoint &)),
+ this,SLOT(customContextMenuRequested(const QPoint &)));
+ connect(m_pTreeWidget,SIGNAL(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)),
+ this,SLOT(currentItemChanged(KviTalTreeWidgetItem *,KviTalTreeWidgetItem *)));
+
+ connect(m_pTreeWidget,SIGNAL(itemDoubleClicked(KviTalTreeWidgetItem*, int )),
+ this,SLOT(itemDoubleClicked(KviTalTreeWidgetItem*, int )));
QString tiptxt = __tr2qs_ctx("<center>This is the list of available IRC servers.<br>" \
"Right-click on the list to add or remove servers and perform other actions.<br>"\
"Double-click on a item for advanced options.</center>","options");
- KviTalToolTip::add(m_pListView,tiptxt);
- KviTalToolTip::add(m_pListView->viewport(),tiptxt);
+ KviTalToolTip::add(m_pTreeWidget,tiptxt);
+ KviTalToolTip::add(m_pTreeWidget->viewport(),tiptxt);
KviTalVBox * vbox = new KviTalVBox(this);
+ vbox->setSpacing(0);
addWidgetToLayout(vbox,1,0,1,0);
- m_pNewNetworkButton = new KviStyledToolButton(vbox);
- m_pNewNetworkButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)));
+ m_pNewNetworkButton = new QToolButton(vbox);
+ m_pNewNetworkButton->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD))));
m_pNewNetworkButton->setAutoRaise(true);
connect(m_pNewNetworkButton,SIGNAL(clicked()),this,SLOT(newNetwork()));
KviTalToolTip::add(m_pNewNetworkButton,__tr2qs_ctx("New Network","options"));
- m_pNewServerButton = new KviStyledToolButton(vbox);
- m_pNewServerButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)));
+ m_pNewServerButton = new QToolButton(vbox);
+ m_pNewServerButton->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER))));
m_pNewServerButton->setAutoRaise(true);
connect(m_pNewServerButton,SIGNAL(clicked()),this,SLOT(newServer()));
KviTalToolTip::add(m_pNewServerButton,__tr2qs_ctx("New Server","options"));
- m_pRemoveButton = new KviStyledToolButton(vbox);
- m_pRemoveButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT)));
+ m_pRemoveButton = new QToolButton(vbox);
+ m_pRemoveButton->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT))));
m_pRemoveButton->setEnabled(false);
m_pRemoveButton->setAutoRaise(true);
connect(m_pRemoveButton,SIGNAL(clicked()),this,SLOT(removeCurrent()));
@@ -1023,15 +1051,15 @@ KviServerOptionsWidget::KviServerOptionsWidget(QWidget * parent)
QFrame * f = new QFrame(vbox);
f->setFrameStyle(QFrame::Sunken | QFrame::HLine);
- m_pCopyServerButton = new KviStyledToolButton(vbox);
- m_pCopyServerButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_COPY)));
+ m_pCopyServerButton = new QToolButton(vbox);
+ m_pCopyServerButton->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_COPY))));
m_pCopyServerButton->setEnabled(false);
m_pCopyServerButton->setAutoRaise(true);
connect(m_pCopyServerButton,SIGNAL(clicked()),this,SLOT(copyServer()));
KviTalToolTip::add(m_pCopyServerButton,__tr2qs_ctx("Copy Server","options"));
- m_pPasteServerButton = new KviStyledToolButton(vbox);
- m_pPasteServerButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PASTE)));
+ m_pPasteServerButton = new QToolButton(vbox);
+ m_pPasteServerButton->setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_PASTE)));
m_pPasteServerButton->setEnabled(false);
m_pPasteServerButton->setAutoRaise(true);
connect(m_pPasteServerButton,SIGNAL(clicked()),this,SLOT(pasteServer()));
@@ -1040,11 +1068,11 @@ KviServerOptionsWidget::KviServerOptionsWidget(QWidget * parent)
f = new QFrame(vbox);
f->setFrameStyle(QFrame::Sunken | QFrame::HLine);
- m_pImportButton = new KviStyledToolButton(vbox);
- m_pImportButton->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_FOLDER)));
+ m_pImportButton = new QToolButton(vbox);
+ m_pImportButton->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_FOLDER))));
m_pImportButton->setAutoRaise(true);
- m_pImportButton->setPopup(m_pImportPopup);
- m_pImportButton->setPopupDelay(1);
+ m_pImportButton->setMenu(m_pImportPopup);
+// m_pImportButton->setPopupDelay(1);
KviTalToolTip::add(m_pImportButton,__tr2qs_ctx("Import List","options"));
QFrame * lll = new QFrame(vbox);
@@ -1057,7 +1085,7 @@ KviServerOptionsWidget::KviServerOptionsWidget(QWidget * parent)
KviTalToolTip::add(m_pSrvNetEdit,__tr2qs_ctx("<center>This is the name of the currently selected server or network</center>","options"));
/*
- m_pIpV6Check = new KviStyledCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),gbox);
+ m_pIpV6Check = new QCheckBox(__tr2qs_ctx("Use IPv6 protocol","options"),gbox);
#ifndef COMPILE_IPV6_SUPPORT
m_pIpV6Check->setEnabled(false);
@@ -1086,11 +1114,11 @@ KviServerOptionsWidget::KviServerOptionsWidget(QWidget * parent)
connect(m_pRecentPopup,SIGNAL(aboutToShow()),this,SLOT(recentServersPopupAboutToShow()));
connect(m_pRecentPopup,SIGNAL(activated(int)),this,SLOT(recentServersPopupClicked(int)));
- QToolButton * tb = new KviStyledToolButton(this);
+ QToolButton * tb = new QToolButton(this);
addWidgetToLayout(tb,1,2,1,2);
- tb->setPixmap(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_TIME)));
- tb->setPopup(m_pRecentPopup);
- tb->setPopupDelay(1);
+ tb->setIcon(QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_TIME))));
+ tb->setMenu(m_pRecentPopup);
+// tb->setPopupDelay(1);
KviTalToolTip::add(tb,__tr2qs_ctx("<center>This button shows a list of recently used servers. It allows you to quickly find them in the list.</center>","options"));
KviBoolSelector * b = addBoolSelector(0,3,1,3,__tr2qs_ctx("Show this dialog at startup","options"),KviOption_boolShowServersConnectDialogOnStart);
@@ -1146,21 +1174,27 @@ void KviServerOptionsWidget::recentServersPopupClicked(int id)
kvi_u32_t uPort = port.toUInt(&bOk);
// we have the port too
- KviTalListViewItem * pFoundNet = 0;
- KviTalListViewItem * pFoundSrv = 0;
+ KviTalTreeWidgetItem * pFoundNet = 0;
+ KviTalTreeWidgetItem * pFoundSrv = 0;
- for(KviTalListViewItem * net = m_pListView->firstChild();net;net = net->nextSibling())
+ //for(KviTalTreeWidgetItem * net = m_pTreeWidget->firstChild();net;net = net->nextSibling()
+ KviTalTreeWidgetItem * net;
+ for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
{
- for(KviTalListViewItem * srv = net->firstChild();srv;srv = srv->nextSibling())
+ net=(KviTalTreeWidgetItem *) m_pTreeWidget->topLevelItem(i);
+ //for(KviTalTreeWidgetItem * srv = net->firstChild();srv;srv = srv->nextSibling())
+ KviTalTreeWidgetItem * srv;
+ for (int j=0;j<net->childCount();j++)
{
- KviStr tmp = ((KviServerOptionsListViewItem *)srv)->m_pServerData->hostName();
+ srv=(KviTalTreeWidgetItem *)net->child(i);
+ KviStr tmp = ((KviServerOptionsTreeWidgetItem *)srv)->m_pServerData->hostName();
if(kvi_strEqualCI(tmp.ptr(),data.ptr()))
{
- if(((KviServerOptionsListViewItem *)srv)->m_pServerData->port() == uPort)
+ if(((KviServerOptionsTreeWidgetItem *)srv)->m_pServerData->port() == uPort)
{
- net->setOpen(true);
- m_pListView->setCurrentItem(srv);
- m_pListView->ensureItemVisible(srv);
+ net->setExpanded(true);
+ m_pTreeWidget->setCurrentItem(srv);
+ m_pTreeWidget->scrollToItem(srv);
return;
} else {
if(!pFoundNet)
@@ -1179,9 +1213,9 @@ void KviServerOptionsWidget::recentServersPopupClicked(int id)
// fallback to the server with the wrong port
if(pFoundNet)
{
- pFoundNet->setOpen(true);
- m_pListView->setCurrentItem(pFoundSrv);
- m_pListView->ensureItemVisible(pFoundSrv);
+ pFoundNet->setExpanded(true);
+ m_pTreeWidget->setCurrentItem(pFoundSrv);
+ m_pTreeWidget->scrollToItem(pFoundSrv);
}
}
@@ -1196,37 +1230,40 @@ void KviServerOptionsWidget::connectCurrentClicked()
void KviServerOptionsWidget::fillServerList()
{
- KviServerOptionsListViewItem * net;
- KviServerOptionsListViewItem * srv;
- KviServerOptionsListViewItem * cur = 0;
+ KviServerOptionsTreeWidgetItem * net;
+ KviServerOptionsTreeWidgetItem * srv;
+ KviServerOptionsTreeWidgetItem * cur = 0;
KviPointerHashTableIterator<QString,KviIrcServerDataBaseRecord> it(*(g_pIrcServerDataBase->recordDict()));
while(KviIrcServerDataBaseRecord * r = it.current())
{
- net = new KviServerOptionsListViewItem(m_pListView,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),r->network());
+ net = new KviServerOptionsTreeWidgetItem(m_pTreeWidget,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),r->network());
KviPointerList<KviIrcServer> * sl = r->serverList();
bool bCurrent = r->network()->name() == g_pIrcServerDataBase->currentNetworkName().toUtf8().data();
- net->setOpen(bCurrent);
+ net->setExpanded(bCurrent);
for(KviIrcServer * s = sl->first();s;s = sl->next())
{
- srv = new KviServerOptionsListViewItem(net,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),s);
+ srv = new KviServerOptionsTreeWidgetItem(net,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),s);
if((s == r->currentServer()) && bCurrent)
{
- m_pListView->setSelected(srv,true);
+ srv->setSelected(true);
cur = srv;
}
}
++it;
}
- if(cur)m_pListView->ensureItemVisible(cur);
+ if(cur)m_pTreeWidget->scrollToItem(cur);
}
-
-void KviServerOptionsWidget::listViewItemSelectionChanged(KviTalListViewItem *it)
+void KviServerOptionsWidget::itemDoubleClicked(KviTalTreeWidgetItem*, int )
+{
+ detailsClicked();
+}
+void KviServerOptionsWidget::currentItemChanged(KviTalTreeWidgetItem *it,KviTalTreeWidgetItem *prev)
{
saveLastItem();
- m_pLastEditedItem = (KviServerOptionsListViewItem *)it;
+ m_pLastEditedItem = (KviServerOptionsTreeWidgetItem *)it;
if(m_pLastEditedItem)
{
@@ -1280,61 +1317,67 @@ void KviServerOptionsWidget::commit()
{
saveLastItem();
g_pIrcServerDataBase->clear();
- KviServerOptionsListViewItem * it = (KviServerOptionsListViewItem *)m_pListView->firstChild();
- while(it)
+// KviServerOptionsTreeWidgetItem * it = (KviServerOptionsTreeWidgetItem *)m_pTreeWidget->firstChild();
+ KviServerOptionsTreeWidgetItem * network;
+ for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
+ //while(it)
{
- QString tmp = it->m_pNetworkData ? it->m_pNetworkData->name() : QString::null;
- if(!tmp.isEmpty())
+ network=(KviServerOptionsTreeWidgetItem *) m_pTreeWidget->topLevelItem(i);
+ QString tmp = network->m_pNetworkData->name();
+ KviIrcNetwork * net = 0;
+ KviIrcServerDataBaseRecord * r = g_pIrcServerDataBase->findRecord(tmp);
+ if(r)
{
- KviIrcNetwork * net = 0;
- KviIrcServerDataBaseRecord * r = g_pIrcServerDataBase->findRecord(tmp);
- if(r)
- {
- net = r->network();
- net->copyFrom(*(it->m_pNetworkData));
- } else {
- net = new KviIrcNetwork(tmp);
- net->copyFrom(*(it->m_pNetworkData));
- r = g_pIrcServerDataBase->insertNetwork(net);
- }
- if(it == m_pLastEditedItem)g_pIrcServerDataBase->setCurrentNetwork(net->name());
-
- KviServerOptionsListViewItem * ch = (KviServerOptionsListViewItem *)it->firstChild();
+ net = r->network();
+ net->copyFrom(*(network->m_pNetworkData));
+ } else {
+ net = new KviIrcNetwork(tmp);
+ net->copyFrom(*(network->m_pNetworkData));
+ r = g_pIrcServerDataBase->insertNetwork(net);
+ }
+ if(network == m_pLastEditedItem)g_pIrcServerDataBase->setCurrentNetwork(net->name());
+
+ KviServerOptionsTreeWidgetItem * ch;
+ for (int j=0;j<network->childCount();i++)
+ {
+ //KviServerOptionsTreeWidgetItem * ch;// = (KviServerOptionsTreeWidgetItem *)it->firstChild();
KviIrcServer *srv;
-
- while(ch)
+ ch=(KviServerOptionsTreeWidgetItem *)network->child(i);
+ // while(ch)
+ // {
+ if(ch->m_pServerData)
{
- if(ch->m_pServerData)
+ if(!ch->m_pServerData->m_szHostname.isEmpty())
{
- if(!ch->m_pServerData->m_szHostname.isEmpty())
+ srv = r->findServer(ch->m_pServerData);
+ if(!srv)
+ {
+ srv = new KviIrcServer(*(ch->m_pServerData));
+ r->insertServer(srv);
+ } else *srv = *(ch->m_pServerData);
+ if(srv->id().isEmpty())srv->generateUniqueId();
+ if(ch == m_pLastEditedItem)
{
- srv = r->findServer(ch->m_pServerData);
- if(!srv)
- {
- srv = new KviIrcServer(*(ch->m_pServerData));
- r->insertServer(srv);
- } else *srv = *(ch->m_pServerData);
- if(srv->id().isEmpty())srv->generateUniqueId();
- if(ch == m_pLastEditedItem)
- {
- g_pIrcServerDataBase->setCurrentNetwork(net->name());
- r->setCurrentServer(srv);
- }
+ g_pIrcServerDataBase->setCurrentNetwork(net->name());
+ r->setCurrentServer(srv);
}
}
- ch = (KviServerOptionsListViewItem *)ch->nextSibling();
}
+ //ch = (KviServerOptionsTreeWidgetItem *)ch->nextSibling();
}
- it = (KviServerOptionsListViewItem *)it->nextSibling();
+
}
+ // it = (KviServerOptionsTreeWidgetItem *)it->nextSibling();
+//}
KviOptionsWidget::commit();
}
-void KviServerOptionsWidget::listViewRightButtonPressed(KviTalListViewItem *it,const QPoint &pnt,int col)
+void KviServerOptionsWidget::customContextMenuRequested(const QPoint &pnt)
{
int id;
- bool bServer = (it && ((KviServerOptionsListViewItem *)it)->m_pServerData);
+ KviTalTreeWidgetItem *it=(KviTalTreeWidgetItem *) m_pTreeWidget->itemAt(pnt);
+ bool bServer = (it && ((KviServerOptionsTreeWidgetItem *)it)->m_pServerData);
m_pContextPopup->clear();
m_pContextPopup->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),__tr2qs_ctx("New Network","options"),this,SLOT(newNetwork()));
id = m_pContextPopup->insertItem(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_CUT)),__tr2qs_ctx("Remove Network","options"),this,SLOT(removeCurrent()));
@@ -1423,16 +1466,19 @@ void KviServerOptionsWidget::importerDead()
void KviServerOptionsWidget::importServer(const KviIrcServer &s,const QString &network)
{
- KviServerOptionsListViewItem * net = findNetItem(network);
+ KviServerOptionsTreeWidgetItem * net = findNetItem(network);
if(!net)
{
KviIrcNetwork d(network);
- net = new KviServerOptionsListViewItem(m_pListView,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),&d);
- net->setOpen(true);
+ net = new KviServerOptionsTreeWidgetItem(m_pTreeWidget,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),&d);
+ net->setExpanded(true);
}
- for(KviServerOptionsListViewItem * srv = (KviServerOptionsListViewItem *)net->firstChild();srv;srv = (KviServerOptionsListViewItem *)srv->nextSibling())
+ //for(KviServerOptionsTreeWidgetItem * srv = (KviServerOptionsTreeWidgetItem *)net->firstChild();srv;srv = (KviServerOptionsTreeWidgetItem *)srv->nextSibling())
+ KviServerOptionsTreeWidgetItem * srv ;
+ for(int i=0;i<net->childCount();i++)
{
+ srv=(KviServerOptionsTreeWidgetItem *) net->child(i);
if((srv)->m_pServerData->useSSL() == s.useSSL())
{
if(srv->m_pServerData->isIpV6() == s.isIpV6())
@@ -1444,8 +1490,8 @@ void KviServerOptionsWidget::importServer(const KviIrcServer &s,const QString &n
if(!s.ipAddress().isEmpty())srv->m_pServerData->setIpAddress(s.ipAddress());
if(!s.password().isEmpty())srv->m_pServerData->setPassword(s.password());
if(!s.nickName().isEmpty())srv->m_pServerData->setNickName(s.nickName());
- m_pListView->setCurrentItem(srv);
- m_pListView->ensureItemVisible(srv);
+ m_pTreeWidget->setCurrentItem(srv);
+ m_pTreeWidget->scrollToItem(srv);
return;
}
}
@@ -1453,28 +1499,28 @@ void KviServerOptionsWidget::importServer(const KviIrcServer &s,const QString &n
}
// not found : add it!
- KviServerOptionsListViewItem * newServer = new KviServerOptionsListViewItem(net,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),&s);
- m_pListView->setCurrentItem(newServer);
- m_pListView->ensureItemVisible(newServer);
+ KviServerOptionsTreeWidgetItem * newServer = new KviServerOptionsTreeWidgetItem(net,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),&s);
+ m_pTreeWidget->setCurrentItem(newServer);
+ m_pTreeWidget->scrollToItem(newServer);
}
void KviServerOptionsWidget::newNetwork()
{
KviIrcNetwork d(__tr2qs_ctx("New Network","options"));
- KviServerOptionsListViewItem * it = new KviServerOptionsListViewItem(m_pListView,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),&d);
- it->setOpen(true);
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ KviServerOptionsTreeWidgetItem * it = new KviServerOptionsTreeWidgetItem(m_pTreeWidget,*(g_pIconManager->getSmallIcon(KVI_SMALLICON_WORLD)),&d);
+ it->setExpanded(true);
+ it->setSelected(true);
+ m_pTreeWidget->scrollToItem(it);
}
void KviServerOptionsWidget::newServer()
{
if(m_pLastEditedItem)
{
- KviServerOptionsListViewItem * net;
+ KviServerOptionsTreeWidgetItem * net;
if(m_pLastEditedItem->m_pServerData)
{
- net = (KviServerOptionsListViewItem *)m_pLastEditedItem->parent();
+ net = (KviServerOptionsTreeWidgetItem *)m_pLastEditedItem->parent();
if(!net)return;
}
else net = m_pLastEditedItem;
@@ -1484,13 +1530,13 @@ void KviServerOptionsWidget::newServer()
tmp.setCacheIp(false);
tmp.generateUniqueId();
- KviServerOptionsListViewItem * it = new KviServerOptionsListViewItem(net,
+ KviServerOptionsTreeWidgetItem * it = new KviServerOptionsTreeWidgetItem(net,
*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),&tmp);
- net->setOpen(true);
+ net->setExpanded(true);
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ it->setSelected(true);
+ m_pTreeWidget->scrollToItem(it);
}
}
@@ -1513,58 +1559,63 @@ void KviServerOptionsWidget::pasteServer()
{
if(m_pLastEditedItem)
{
- KviServerOptionsListViewItem * net;
+ KviServerOptionsTreeWidgetItem * net;
if(m_pLastEditedItem->m_pServerData)
{
- net = (KviServerOptionsListViewItem *)m_pLastEditedItem->parent();
+ net = (KviServerOptionsTreeWidgetItem *)m_pLastEditedItem->parent();
if(!net)return;
}
else net = m_pLastEditedItem;
- KviServerOptionsListViewItem * it = new KviServerOptionsListViewItem(net,
+ KviServerOptionsTreeWidgetItem * it = new KviServerOptionsTreeWidgetItem(net,
*(g_pIconManager->getSmallIcon(KVI_SMALLICON_SERVER)),m_pClipboard);
- net->setOpen(true);
+ net->setExpanded(true);
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ it->setSelected(true);
+ m_pTreeWidget->scrollToItem(it);
}
}
}
void KviServerOptionsWidget::removeCurrent()
{
+ /*
if(m_pLastEditedItem)
{
- KviTalListViewItem * it = m_pLastEditedItem->itemAbove();
+ KviTalTreeWidgetItem * it = m_pLastEditedItem->itemAbove();
if(!it)it = m_pLastEditedItem->firstChild() ? m_pLastEditedItem->nextSibling() : m_pLastEditedItem->itemBelow();
delete m_pLastEditedItem;
m_pLastEditedItem = 0;
- if(!it)it = m_pListView->firstChild();
+ if(!it)it = m_pTreeWidget->firstChild();
if(it)
{
- m_pListView->setSelected(it,true);
- m_pListView->ensureItemVisible(it);
+ it->setSelected(true);
+ m_pTreeWidget->scrollToItem(it);
}
}
+ */
}
-KviServerOptionsListViewItem * KviServerOptionsWidget::findNetItem(const QString &netname)
+KviServerOptionsTreeWidgetItem * KviServerOptionsWidget::findNetItem(const QString &netname)
{
- KviServerOptionsListViewItem * it = (KviServerOptionsListViewItem *)m_pListView->firstChild();
- while(it)
+
+ KviServerOptionsTreeWidgetItem * it;// = (KviServerOptionsTreeWidgetItem *)m_pTreeWidget->firstChild();
+ //while(it)
+ for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++)
{
+ it=(KviServerOptionsTreeWidgetItem *)m_pTreeWidget->topLevelItem(i);
if(KviQString::equalCI(it->text(0),netname))return it;
- it = (KviServerOptionsListViewItem *)it->nextSibling();
+ // it = (KviServerOptionsTreeWidgetItem *)it->nextSibling();
}
return 0;
}
void KviServerOptionsWidget::clearList()
{
- m_pListView->clear();
+ m_pTreeWidget->clear();
m_pLastEditedItem = 0;
- listViewItemSelectionChanged(0);
+ currentItemChanged(0,0);
}
void KviServerOptionsWidget::detailsClicked()
diff --git a/src/modules/options/optw_servers.h b/src/modules/options/optw_servers.h
index 97a773f9e..efaf51308 100644
--- a/src/modules/options/optw_servers.h
+++ b/src/modules/options/optw_servers.h
@@ -26,7 +26,7 @@
//=============================================================================
#include "kvi_optionswidget.h"
-#include "kvi_tal_listview.h"
+#include "kvi_tal_TreeWidget.h"
#include <QDialog>
#include <QButtonGroup>
@@ -50,12 +50,12 @@ class KviIrcNetworkData;
class KviMexServerImport;
-class KviServerOptionsListViewItem : public KviTalListViewItem
+class KviServerOptionsTreeWidgetItem : public KviTalTreeWidgetItem
{
public:
- KviServerOptionsListViewItem(KviTalListView *parent,const QPixmap &pm,const KviIrcNetwork *n);
- KviServerOptionsListViewItem(KviTalListViewItem *parent,const QPixmap &pm,const KviIrcServer *s);
- ~KviServerOptionsListViewItem();
+ KviServerOptionsTreeWidgetItem(KviTalTreeWidget *parent,const QPixmap &pm,const KviIrcNetwork *n);
+ KviServerOptionsTreeWidgetItem(KviTalTreeWidgetItem *parent,const QPixmap &pm,const KviIrcServer *s);
+ ~KviServerOptionsTreeWidgetItem();
public:
KviIrcServer * m_pServerData;
KviIrcNetwork * m_pNetworkData;
@@ -84,7 +84,7 @@ protected:
QCheckBox * m_pAutoConnectCheck;
- KviTalListView * m_pNickServListView;
+ KviTalTreeWidget * m_pNickServTreeWidget;
QCheckBox * m_pNickServCheck;
QPushButton * m_pAddRuleButton;
QPushButton * m_pDelRuleButton;
@@ -157,7 +157,7 @@ public:
KviServerOptionsWidget(QWidget * parent);
~KviServerOptionsWidget();
protected:
- KviTalListView * m_pListView;
+ KviTalTreeWidget * m_pTreeWidget;
QLabel * m_pSrvNetLabel;
QLineEdit * m_pSrvNetEdit;
//QLabel * m_pPortLabel;
@@ -170,7 +170,7 @@ protected:
//QCheckBox * m_pIpV6Check;
QPushButton * m_pConnectCurrent;
QPushButton * m_pConnectNew;
- KviServerOptionsListViewItem * m_pLastEditedItem;
+ KviServerOptionsTreeWidgetItem * m_pLastEditedItem;
KviServerDetailsWidget * m_pServerDetailsDialog;
KviNetworkDetailsWidget * m_pNetworkDetailsDialog;
KviMexServerImport * m_pImportFilter;
@@ -184,19 +184,20 @@ protected:
private:
void fillServerList();
void saveLastItem();
- KviServerOptionsListViewItem * findNetItem(const QString &netname);
+ KviServerOptionsTreeWidgetItem * findNetItem(const QString &netname);
protected slots:
void importerDead();
void importServer(const KviIrcServer & s,const QString &network);
void importPopupAboutToShow();
- void listViewItemSelectionChanged(KviTalListViewItem *it);
- void listViewRightButtonPressed(KviTalListViewItem *it,const QPoint &pnt,int col);
+ void currentItemChanged(KviTalTreeWidgetItem *cur,KviTalTreeWidgetItem *prev);
+ void customContextMenuRequested(const QPoint &pnt);
void newNetwork();
void removeCurrent();
void newServer();
void copyServer();
void pasteServer();
void clearList();
+ void itemDoubleClicked(KviTalTreeWidgetItem*, int );
void detailsClicked();
void connectCurrentClicked();
void recentServersPopupAboutToShow();
diff --git a/src/modules/options/optw_sound.cpp b/src/modules/options/optw_sound.cpp
index 42dbe1e86..0a2ec002c 100644
--- a/src/modules/options/optw_sound.cpp
+++ b/src/modules/options/optw_sound.cpp
@@ -124,7 +124,7 @@ KviSoundGeneralOptionsWidget::KviSoundGeneralOptionsWidget(QWidget * parent)
m_pWinampEncodingCombo = new QComboBox(h);
- m_pWinampEncodingCombo->insertItem(__tr2qs_ctx("Use Language Encoding","options"));
+ m_pWinampEncodingCombo->addItem(__tr2qs_ctx("Use Language Encoding","options"));
i = 0;
iMatch = 0;
@@ -229,7 +229,7 @@ void KviSoundGeneralOptionsWidget::mediaFillBox()
for(i=0;i<cnt;i++)
{
- QString t = m_pMediaPlayerBox->text(i);
+ QString t = m_pMediaPlayerBox->itemText(i);
if(KviQString::equalCI(t,KVI_OPTION_STRING(KviOption_stringPreferredMediaPlayer)))
{
m_pMediaPlayerBox->setCurrentIndex(i);
diff --git a/src/modules/options/optw_taskbar.cpp b/src/modules/options/optw_taskbar.cpp
index 46a31a6e9..2ebb42e57 100644
--- a/src/modules/options/optw_taskbar.cpp
+++ b/src/modules/options/optw_taskbar.cpp
@@ -171,7 +171,7 @@ void KviTreeTaskBarBackgroundOptionsWidget::commit()
KviOptionsWidget::commit();
int iFlags=0;
- switch(m_pHorizontalAlign->currentItem())
+ switch(m_pHorizontalAlign->currentIndex())
{
case 1:
iFlags|=Qt::AlignLeft;
@@ -183,7 +183,7 @@ void KviTreeTaskBarBackgroundOptionsWidget::commit()
iFlags|=Qt::AlignHCenter;
break;
}
- switch(m_pVerticalAlign->currentItem())
+ switch(m_pVerticalAlign->currentIndex())
{
case 1:
iFlags|=Qt::AlignTop;
diff --git a/src/modules/options/optw_urlhandlers.cpp b/src/modules/options/optw_urlhandlers.cpp
index 12787c604..72e9d3cc2 100644
--- a/src/modules/options/optw_urlhandlers.cpp
+++ b/src/modules/options/optw_urlhandlers.cpp
@@ -85,37 +85,37 @@ void KviUrlHandlersOptionsWidget::commit()
KviOptionsWidget::commit();
#ifdef COMPILE_ON_WINDOWS
- KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("@MAGIC@","\\\\");
- KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("@MAGIC@","\\\\");
- KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("@MAGIC@","\\\\");
- KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("@MAGIC@","\\\\");
- KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("@MAGIC@","\\\\");
- KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\\\","@MAGIC@","options");
- KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\","\\\\","options");
- KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("@MAGIC@","\\\\","options");
+ KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\\\","@MAGIC@");
+ KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\","\\\\");
+ KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("@MAGIC@","\\\\");
//Check for escaped " in url handler ( \" )
- KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\\\\"","\\\"","options");
- KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\\\\"","\\\"","options");
- KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\\\\"","\\\"","options");
- KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\\\\"","\\\"","options");
- KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\\\\"","\\\"","options");
- KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\\\\"","\\\"","options");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpCommand).replace("\\\\\"","\\\"");
+ KVI_OPTION_STRING(KviOption_stringUrlHttpsCommand).replace("\\\\\"","\\\"");
+ KVI_OPTION_STRING(KviOption_stringUrlFtpCommand).replace("\\\\\"","\\\"");
+ KVI_OPTION_STRING(KviOption_stringUrlMailtoCommand).replace("\\\\\"","\\\"");
+ KVI_OPTION_STRING(KviOption_stringUrlFileCommand).replace("\\\\\"","\\\"");
+ KVI_OPTION_STRING(KviOption_stringUrlUnknownCommand).replace("\\\\\"","\\\"");
#endif
}
diff --git a/src/modules/options/optw_userlist.cpp b/src/modules/options/optw_userlist.cpp
index 1eb77c4a8..0200fed84 100644
--- a/src/modules/options/optw_userlist.cpp
+++ b/src/modules/options/optw_userlist.cpp
@@ -88,12 +88,12 @@ KviUserListGridOptionsWidget::KviUserListGridOptionsWidget(QWidget * parent)
QLabel * l = new QLabel(__tr2qs_ctx("Grid type:","options"),hb);
l->setEnabled(KVI_OPTION_BOOL(KviOption_boolUserListViewDrawGrid));
connect(b,SIGNAL(toggled(bool)),l,SLOT(setEnabled(bool)));
- m_pGridTypeCombo = new QComboBox(false,hb);
- m_pGridTypeCombo->insertItem(__tr2qs_ctx("3D Grid","options"));
- m_pGridTypeCombo->insertItem(__tr2qs_ctx("3D Buttons","options"));
- m_pGridTypeCombo->insertItem(__tr2qs_ctx("Plain Grid","options"));
- m_pGridTypeCombo->insertItem(__tr2qs_ctx("Dotted Grid","options"));
- m_pGridTypeCombo->setCurrentItem(KVI_OPTION_UINT(KviOption_uintUserListViewGridType));
+ m_pGridTypeCombo = new QComboBox(hb);
+ m_pGridTypeCombo->addItem(__tr2qs_ctx("3D Grid","options"));
+ m_pGridTypeCombo->addItem(__tr2qs_ctx("3D Buttons","options"));
+ m_pGridTypeCombo->addItem(__tr2qs_ctx("Plain Grid","options"));
+ m_pGridTypeCombo->addItem(__tr2qs_ctx("Dotted Grid","options"));
+ m_pGridTypeCombo->setCurrentIndex(KVI_OPTION_UINT(KviOption_uintUserListViewGridType));
m_pGridTypeCombo->setEnabled(KVI_OPTION_BOOL(KviOption_boolUserListViewDrawGrid));
connect(b,SIGNAL(toggled(bool)),m_pGridTypeCombo,SLOT(setEnabled(bool)));
addRowSpacer(0,3,0,3);
@@ -106,7 +106,7 @@ KviUserListGridOptionsWidget::~KviUserListGridOptionsWidget()
void KviUserListGridOptionsWidget::commit()
{
KviOptionsWidget::commit();
- KVI_OPTION_UINT(KviOption_uintUserListViewGridType) = m_pGridTypeCombo->currentItem();
+ KVI_OPTION_UINT(KviOption_uintUserListViewGridType) = m_pGridTypeCombo->currentIndex();
if(KVI_OPTION_UINT(KviOption_uintUserListViewGridType) > KVI_USERLISTVIEW_GRIDTYPE_MAXIMUM)
KVI_OPTION_UINT(KviOption_uintUserListViewGridType) = KVI_USERLISTVIEW_GRIDTYPE_DEFAULT;
@@ -134,44 +134,44 @@ KviUserListLookBackgroundOptionsWidget::KviUserListLookBackgroundOptionsWidget(Q
m_pVerticalAlign=new QComboBox(this);
addWidgetToLayout(m_pVerticalAlign,1,3,1,3);
- m_pHorizontalAlign->insertItem(__tr2qs_ctx("Tile","options"));
- m_pHorizontalAlign->insertItem(__tr2qs_ctx("Left","options"));
- m_pHorizontalAlign->insertItem(__tr2qs_ctx("Right","options"));
- m_pHorizontalAlign->insertItem(__tr2qs_ctx("Center","options"));
+ m_pHorizontalAlign->addItem(__tr2qs_ctx("Tile","options"));
+ m_pHorizontalAlign->addItem(__tr2qs_ctx("Left","options"));
+ m_pHorizontalAlign->addItem(__tr2qs_ctx("Right","options"));
+ m_pHorizontalAlign->addItem(__tr2qs_ctx("Center","options"));
- m_pVerticalAlign->insertItem(__tr2qs_ctx("Tile","options"));
- m_pVerticalAlign->insertItem(__tr2qs_ctx("Top","options"));
- m_pVerticalAlign->insertItem(__tr2qs_ctx("Bottom","options"));
- m_pVerticalAlign->insertItem(__tr2qs_ctx("Center","options"));
+ m_pVerticalAlign->addItem(__tr2qs_ctx("Tile","options"));
+ m_pVerticalAlign->addItem(__tr2qs_ctx("Top","options"));
+ m_pVerticalAlign->addItem(__tr2qs_ctx("Bottom","options"));
+ m_pVerticalAlign->addItem(__tr2qs_ctx("Center","options"));
switch( KVI_OPTION_UINT(KviOption_uintUserListPixmapAlign) & Qt::AlignHorizontal_Mask)
{
case Qt::AlignLeft:
- m_pHorizontalAlign->setCurrentItem(1);
+ m_pHorizontalAlign->setCurrentIndex(1);
break;
case Qt::AlignRight:
- m_pHorizontalAlign->setCurrentItem(2);
+ m_pHorizontalAlign->setCurrentIndex(2);
break;
case Qt::AlignHCenter:
- m_pHorizontalAlign->setCurrentItem(3);
+ m_pHorizontalAlign->setCurrentIndex(3);
break;
default:
- m_pHorizontalAlign->setCurrentItem(0);
+ m_pHorizontalAlign->setCurrentIndex(0);
}
switch( KVI_OPTION_UINT(KviOption_uintUserListPixmapAlign) & Qt::AlignVertical_Mask)
{
case Qt::AlignTop:
- m_pVerticalAlign->setCurrentItem(1);
+ m_pVerticalAlign->setCurrentIndex(1);
break;
case Qt::AlignBottom:
- m_pVerticalAlign->setCurrentItem(2);
+ m_pVerticalAlign->setCurrentIndex(2);
break;
case Qt::AlignVCenter:
- m_pVerticalAlign->setCurrentItem(3);
+ m_pVerticalAlign->setCurrentIndex(3);
break;
default:
- m_pVerticalAlign->setCurrentItem(0);
+ m_pVerticalAlign->setCurrentIndex(0);
}
@@ -189,7 +189,7 @@ void KviUserListLookBackgroundOptionsWidget::commit()
KviOptionsWidget::commit();
int iFlags=0;
- switch(m_pHorizontalAlign->currentItem())
+ switch(m_pHorizontalAlign->currentIndex())
{
case 1:
iFlags|=Qt::AlignLeft;
@@ -201,7 +201,7 @@ void KviUserListLookBackgroundOptionsWidget::commit()
iFlags|=Qt::AlignHCenter;
break;
}
- switch(m_pVerticalAlign->currentItem())
+ switch(m_pVerticalAlign->currentIndex())
{
case 1:
iFlags|=Qt::AlignTop;