diff options
| author | 2008-09-24 15:58:04 +0000 | |
|---|---|---|
| committer | 2008-09-24 15:58:04 +0000 | |
| commit | fbd6f357c5d187e6cc2e4dce82bcb72d75133972 (patch) | |
| tree | 7f4321bfaa504eb01cc1632dccc8657865564302 /src | |
| parent | little improvement (diff) | |
| download | KVIrc-fbd6f357c5d187e6cc2e4dce82bcb72d75133972.tar.gz KVIrc-fbd6f357c5d187e6cc2e4dce82bcb72d75133972.tar.bz2 KVIrc-fbd6f357c5d187e6cc2e4dce82bcb72d75133972.zip | |
removed KviTalListView in favour of KviTalTreeWidget;
updated TODOs;
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@2549 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src')
| -rw-r--r-- | src/kvilib/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | src/kvilib/tal/kvi_tal_listview.cpp | 793 | ||||
| -rw-r--r-- | src/kvilib/tal/kvi_tal_listview.h | 214 | ||||
| -rw-r--r-- | src/modules/aliaseditor/aliaseditor.cpp | 364 | ||||
| -rw-r--r-- | src/modules/aliaseditor/aliaseditor.h | 111 | ||||
| -rw-r--r-- | src/modules/objects/CMakeLists.txt | 18 | ||||
| -rw-r--r-- | src/modules/objects/class_treewidget.cpp (renamed from src/modules/objects/class_listview.cpp) | 14 | ||||
| -rw-r--r-- | src/modules/objects/class_treewidget.h (renamed from src/modules/objects/class_listview.h) | 34 | ||||
| -rw-r--r-- | src/modules/objects/class_treewidgetitem.cpp (renamed from src/modules/objects/class_listviewitem.cpp) | 167 | ||||
| -rw-r--r-- | src/modules/objects/class_treewidgetitem.h (renamed from src/modules/objects/class_listviewitem.h) | 35 | ||||
| -rw-r--r-- | src/modules/objects/libkviobjects.cpp | 7 |
11 files changed, 367 insertions, 1392 deletions
diff --git a/src/kvilib/CMakeLists.txt b/src/kvilib/CMakeLists.txt index 5ede80fbf..1c33f4418 100644 --- a/src/kvilib/CMakeLists.txt +++ b/src/kvilib/CMakeLists.txt @@ -28,7 +28,6 @@ SET(kvilib_MOC_HDRS tal/kvi_tal_hbox.h tal/kvi_tal_iconview.h tal/kvi_tal_listbox.h - tal/kvi_tal_listview.h tal/kvi_tal_listwidget.h tal/kvi_tal_popupmenu.h tal/kvi_tal_scrollview.h @@ -128,7 +127,6 @@ SET(kvilib_SRCS tal/kvi_tal_iconview.cpp tal/kvi_tal_itemdelegates.cpp tal/kvi_tal_listbox.cpp - tal/kvi_tal_listview.cpp tal/kvi_tal_listwidget.cpp tal/kvi_tal_mainwindow.cpp tal/kvi_tal_menubar.cpp diff --git a/src/kvilib/tal/kvi_tal_listview.cpp b/src/kvilib/tal/kvi_tal_listview.cpp deleted file mode 100644 index 32b9b446a..000000000 --- a/src/kvilib/tal/kvi_tal_listview.cpp +++ /dev/null @@ -1,793 +0,0 @@ -//============================================================================= -// -// File : kvi_tal_listview.cpp -// Creation date : Mon May 05 2008 11:25:08 by Alessandro Carbone -// -// This file is part of the KVirc irc client distribution -// Copyright (C) 2008 Alessandro Carbone (elfonol at gmail dot com) -// -// This program is FREE software. You can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your opinion) any later version. -// -// This program is distributed in the HOPE that it will be USEFUL, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -// See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, write to the Free Software Foundation, -// Inc. ,59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// -//============================================================================= - - -#include "kvi_tal_listview.h" -#include "kvi_pointerhashtable.h" - -#include <qpainter.h> -#include <qstyle.h> -#include <q3header.h> -#include <qapplication.h> -#include <qhash.h> -#include <qstyleoption.h> -#include <qaccessible.h> - -static QStyleOptionQ3ListView getStyleOption(const Q3ListView *lv, const Q3ListViewItem *item) -{ - QStyleOptionQ3ListView opt; - opt.init(lv); - opt.subControls = QStyle::SC_None; - opt.activeSubControls = QStyle::SC_None; - QWidget *vp = lv->viewport(); - opt.viewportPalette = vp->palette(); - opt.viewportBGRole = vp->backgroundRole(); - opt.itemMargin = lv->itemMargin(); - opt.sortColumn = 0; - opt.treeStepSize = lv->treeStepSize(); - opt.rootIsDecorated = lv->rootIsDecorated(); - bool firstItem = true; - while (item) { - QStyleOptionQ3ListViewItem lvi; - lvi.height = item->height(); - lvi.totalHeight = item->totalHeight(); - lvi.itemY = item->itemPos(); - lvi.childCount = item->childCount(); - lvi.features = QStyleOptionQ3ListViewItem::None; - lvi.state = QStyle::State_None; - if (item->isEnabled()) - lvi.state |= QStyle::State_Enabled; - if (item->isOpen()) - lvi.state |= QStyle::State_Open; - if (item->isExpandable()) - lvi.features |= QStyleOptionQ3ListViewItem::Expandable; - if (item->multiLinesEnabled()) - lvi.features |= QStyleOptionQ3ListViewItem::MultiLine; - if (item->isVisible()) - lvi.features |= QStyleOptionQ3ListViewItem::Visible; - if (item->parent() && item->parent()->rtti() == 1 - && static_cast<Q3CheckListItem *>(item->parent())->type() == Q3CheckListItem::Controller) - lvi.features |= QStyleOptionQ3ListViewItem::ParentControl; - opt.items.append(lvi); - if (!firstItem) { - item = item->nextSibling(); - } else { - firstItem = false; - item = item->firstChild(); - } - } - return opt; -} - -KviTalListView::KviTalListView(QWidget * pParent) -: Q3ListView(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 KviTalListView::redirect_selectionChanged(Q3ListViewItem * pItem) -{ - emit selectionChanged((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_currentChanged(Q3ListViewItem * pItem) -{ - emit currentChanged((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_clicked(Q3ListViewItem * pItem) -{ - emit clicked((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_clicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit clicked((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_pressed(Q3ListViewItem * pItem) -{ - emit pressed((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_pressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit pressed((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_doubleClicked(Q3ListViewItem * pItem) -{ - emit doubleClicked((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_doubleClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit doubleClicked((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_returnPressed(Q3ListViewItem * pItem) -{ - emit returnPressed((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_spacePressed(Q3ListViewItem * pItem) -{ - emit spacePressed((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_rightButtonClicked(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit rightButtonClicked((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_rightButtonPressed(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit rightButtonPressed((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_mouseButtonClicked(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit mouseButtonClicked(iButton,(KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_mouseButtonPressed(int iButton,Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit mouseButtonPressed(iButton,(KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_contextMenuRequested(Q3ListViewItem * pItem,const QPoint &pnt,int uColumn) -{ - emit contextMenuRequested((KviTalListViewItem *)pItem,pnt,uColumn); -} - -void KviTalListView::redirect_onItem(Q3ListViewItem * pItem) -{ - emit onItem((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_expanded(Q3ListViewItem * pItem) -{ - emit expanded((KviTalListViewItem *)pItem); -} - -void KviTalListView::redirect_collapsed(Q3ListViewItem * pItem) -{ - emit collapsed((KviTalListViewItem *)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) -: KviTalListViewItem(parent, text, QString()) -{ - 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; - } -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalCheckListItem *parent, KviTalListViewItem *after,const QString &text, Type tt) -: KviTalListViewItem(parent, after, text) -{ - 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; - } -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalListViewItem *parent, const QString &text,Type tt) -: KviTalListViewItem(parent, text, QString()) -{ - myType = tt; - if (myType == RadioButton) { - qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be " - "child of a KviTalCheckListItem"); - } - init(); -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalListViewItem *parent, KviTalListViewItem *after,const QString &text, Type tt) -: KviTalListViewItem(parent, after, text) -{ - myType = tt; - if (myType == RadioButton) { - qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be " - "child of a KviTalCheckListItem"); - } - init(); -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalListView *parent, const QString &text,Type tt) -: KviTalListViewItem(parent, text) -{ - myType = tt; - if (tt == RadioButton){ - qWarning("KviTalCheckListItem::KviTalCheckListItem(), radio button must be " - "child of a KviTalCheckListItem"); - } - init(); -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalListView *parent, KviTalListViewItem *after,const QString &text, Type tt) -: KviTalListViewItem(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(KviTalListView *parent, const QString &text,const QPixmap & p) -: KviTalListViewItem(parent, text) -{ - myType = RadioButtonController; - setPixmap(0, p); - init(); -} - -KviTalCheckListItem::KviTalCheckListItem(KviTalListViewItem *parent, const QString &text,const QPixmap & p) -: KviTalListViewItem(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 { - KviTalListViewItem *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() -{ - KviTalListView * 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: { - KviTalListViewItem *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; - KviTalListViewItem *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; - - KviTalListViewItem *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() -{ - KviTalListViewItem::setup(); - int h = height(); - KviTalListView *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 KviTalListView* lv, int column) const -{ - int r = KviTalListViewItem::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; - - KviTalListView *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. - KviTalListViewItem::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())); - KviTalListViewItem::paintCell(p, cg, column, width - r, align); -} - -void KviTalCheckListItem::paintFocus(QPainter *p, const QColorGroup & cg, -const QRect & r) -{ - bool intersect = true; - KviTalListView *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()); - KviTalListViewItem::paintFocus(p, cg, rect); - } else { - KviTalListViewItem::paintFocus(p, cg, r); - } -} - - -#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES - #include "kvi_tal_listview.moc" -#endif //!COMPILE_USE_STANDALONE_MOC_SOURCES diff --git a/src/kvilib/tal/kvi_tal_listview.h b/src/kvilib/tal/kvi_tal_listview.h deleted file mode 100644 index 4c4612fbf..000000000 --- a/src/kvilib/tal/kvi_tal_listview.h +++ /dev/null @@ -1,214 +0,0 @@ -#ifndef _KVI_TAL_LISTVIEW_H_ -#define _KVI_TAL_LISTVIEW_H_ - -//============================================================================= -// -// File : kvi_tal_listview.h -// Creation date : Mon May 05 2008 11:25:08 by Alessandro Carbone -// -// This file is part of the KVirc irc client distribution -// Copyright (C) 2008 Alessandro Carbone (elfonol at gmail dot com) -// -// This program is FREE software. You can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your opinion) any later version. -// -// This program is distributed in the HOPE that it will be USEFUL, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -// See the GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, write to the Free Software Foundation, -// Inc. ,59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -// -//============================================================================= - - -// -// This is the only reasonable CROSS-QT3-QT4-COMPATIBLE implementation -// of QListView I've been able to find. -// Note that using macros for the items will NOT work since moc -// doesn't expand them. Note also that KviTalCheckListItem must -// be fully reimplemented and not be inherited from QCheckListItem -// to build up a consistent item object hierarchy. To complete -// the obscenity, we need TWO COMPLETE implementations: one for Qt3 -// and one for Qt4... bleah :D -// -// The code for KviTalCheckListItem is adapted from qlistview.h/cpp -// present in qt 3.3.6 AND in qt 4.1.2. -// - -#include "kvi_settings.h" -#include "kvi_qstring.h" - -#include <q3listview.h> - -class KviTalListViewItem; - - -class KVILIB_API KviTalListView : public Q3ListView -{ - friend class KviTalCheckListItem; - Q_OBJECT -public: - KviTalListView(QWidget * pParent); - virtual ~KviTalListView() {}; -public: - // Shadow the internal Qt methods - KviTalListViewItem * firstChild() const { return (KviTalListViewItem *)Q3ListView::firstChild(); }; - KviTalListViewItem * lastItem() const { return (KviTalListViewItem *)Q3ListView::lastItem(); }; - KviTalListViewItem * selectedItem() const { return (KviTalListViewItem *)Q3ListView::selectedItem(); }; - KviTalListViewItem * currentItem() const { return (KviTalListViewItem *)Q3ListView::currentItem(); }; - KviTalListViewItem * itemAt(const QPoint &pnt) const { return (KviTalListViewItem *)Q3ListView::itemAt(pnt); }; -signals: - void selectionChanged(KviTalListViewItem * pItem); - void currentChanged(KviTalListViewItem * pItem); - void clicked(KviTalListViewItem * pItem); - void clicked(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void pressed(KviTalListViewItem * pItem); - void pressed(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void doubleClicked(KviTalListViewItem * pItem); - void doubleClicked(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void returnPressed(KviTalListViewItem * pItem); - void spacePressed(KviTalListViewItem * pItem); - void rightButtonClicked(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void rightButtonPressed(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void mouseButtonClicked(int iButton,KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void mouseButtonPressed(int iButton,KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void contextMenuRequested(KviTalListViewItem * pItem,const QPoint &pnt,int uColumn); - void onItem(KviTalListViewItem * pItem); - void expanded(KviTalListViewItem * pItem); - void collapsed(KviTalListViewItem * pItem); -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); - -}; - - -class KVILIB_API KviTalListViewItem : public Q3ListViewItem -{ -public: - KviTalListViewItem(KviTalListView * pParent) - : Q3ListViewItem(pParent) {}; - KviTalListViewItem(KviTalListViewItem * pParent) - : Q3ListViewItem(pParent) {}; - KviTalListViewItem(KviTalListView * pParent,KviTalListViewItem * pAfter) - : Q3ListViewItem(pParent,pAfter) {}; - KviTalListViewItem(KviTalListViewItem * pParent,KviTalListViewItem * pAfter) - : Q3ListViewItem(pParent,pAfter) {}; - KviTalListViewItem(KviTalListView * pParent,const QString &szLabel1,const QString &szLabel2 = KviQString::empty,const QString &szLabel3 = KviQString::empty,const QString &szLabel4 = KviQString::empty,const QString &szLabel5 = KviQString::empty) - : Q3ListViewItem(pParent,szLabel1,szLabel2,szLabel3,szLabel4,szLabel5) {}; - KviTalListViewItem(KviTalListView * pParent,KviTalListViewItem * pAfter,const QString &szLabel1,const QString &szLabel2 = KviQString::empty,const QString &szLabel3 = KviQString::empty,const QString &szLabel4 = KviQString::empty,const QString &szLabel5 = KviQString::empty) - : Q3ListViewItem(pParent,pAfter,szLabel1,szLabel2,szLabel3,szLabel4,szLabel5) {}; - KviTalListViewItem(KviTalListViewItem * pParent,const QString &szLabel1,const QString &szLabel2 = KviQString::empty,const QString &szLabel3 = KviQString::empty,const QString &szLabel4 = KviQString::empty) - : Q3ListViewItem(pParent,szLabel1,szLabel2,szLabel3,szLabel4) {}; - KviTalListViewItem(KviTalListViewItem * pParent,KviTalListViewItem * pAfter,const QString &szLabel1,const QString &szLabel2 = KviQString::empty,const QString &szLabel3 = KviQString::empty,const QString &szLabel4 = KviQString::empty) - : Q3ListViewItem(pParent,pAfter,szLabel1,szLabel2,szLabel3,szLabel4) {}; -public: - // Shadow the internal Qt methods - KviTalListViewItem * firstChild() const { return (KviTalListViewItem *)Q3ListViewItem::firstChild(); }; - KviTalListViewItem * nextSibling() const { return (KviTalListViewItem *)Q3ListViewItem::nextSibling(); }; - KviTalListViewItem * parent() const { return (KviTalListViewItem *)Q3ListViewItem::parent(); }; - KviTalListView * listView() const { return (KviTalListView *)Q3ListViewItem::listView(); }; - KviTalListViewItem * itemAbove() { return (KviTalListViewItem *)Q3ListViewItem::itemAbove(); }; - KviTalListViewItem * itemBelow() { return (KviTalListViewItem *)Q3ListViewItem::itemBelow(); }; -}; - -struct KviTalCheckListItemPrivate; - -class KVILIB_API KviTalCheckListItem : public KviTalListViewItem -{ -public: - enum Type { - RadioButton, - CheckBox, - Controller, - RadioButtonController=Controller, - CheckBoxController - }; - - enum ToggleState { Off, NoChange, On }; - - KviTalCheckListItem(KviTalCheckListItem *parent, const QString &text, - Type = RadioButtonController); - KviTalCheckListItem(KviTalCheckListItem *parent, KviTalListViewItem *after, - const QString &text, Type = RadioButtonController); - KviTalCheckListItem(KviTalListViewItem *parent, const QString &text, - Type = RadioButtonController); - KviTalCheckListItem(KviTalListViewItem *parent, KviTalListViewItem *after, - const QString &text, Type = RadioButtonController); - KviTalCheckListItem(KviTalListView *parent, const QString &text, - Type = RadioButtonController); - KviTalCheckListItem(KviTalListView *parent, KviTalListViewItem *after, - const QString &text, Type = RadioButtonController); - KviTalCheckListItem(KviTalListViewItem *parent, const QString &text, - const QPixmap &); - KviTalCheckListItem(KviTalListView *parent, const QString &text, - const QPixmap &); - ~KviTalCheckListItem(); - - void paintCell(QPainter *, const QColorGroup & cg, - int column, int width, int alignment); - virtual void paintFocus(QPainter *, const QColorGroup &cg, - const QRect & r); - int width(const QFontMetrics&, const KviTalListView*, int column) const; - void setup(); - - virtual void setOn(bool); - bool isOn() const { return on; } - Type type() const { return myType; } - QString text() const { return KviTalListViewItem::text(0); } - QString text(int n) const { return KviTalListViewItem::text(n); } - - void setTristate(bool); - bool isTristate() const; - ToggleState state() const; - void setState(ToggleState s); - - int rtti() const; - enum { RTTI = 1 }; - -protected: - void activate(); - void turnOffChild(); - virtual void stateChange(bool); - -private: - void init(); - ToggleState internalState() const; - void setStoredState(ToggleState newState, KviTalCheckListItem *key); - ToggleState storedState(KviTalCheckListItem *key) const; - void stateChange(ToggleState s); - void restoreState(KviTalCheckListItem *key, int depth = 0); - void updateController(bool update = true , bool store = false); - void updateStoredState(KviTalCheckListItem *key); - void setState(ToggleState s, bool update, bool store); - void setCurrentState(ToggleState s); - - Type myType; - bool on; - KviTalCheckListItemPrivate *d; -}; - -#define KviTalListViewItemIterator Q3ListViewItemIterator - -#endif // _KVI_TAL_LISTVIEW_H_ diff --git a/src/modules/aliaseditor/aliaseditor.cpp b/src/modules/aliaseditor/aliaseditor.cpp index 4653bc642..73fb5be5d 100644 --- a/src/modules/aliaseditor/aliaseditor.cpp +++ b/src/modules/aliaseditor/aliaseditor.cpp @@ -57,13 +57,13 @@ extern KviAliasEditorWindow * g_pAliasEditorWindow; extern KviModule * g_pAliasEditorModule; -KviAliasEditorListViewItem::KviAliasEditorListViewItem(QTreeWidget * pListView,Type eType,const QString &szName) -: QTreeWidgetItem(pListView), m_eType(eType), m_pParentNamespaceItem(0), KviHeapObject() +KviAliasEditorTreeWidgetItem::KviAliasEditorTreeWidgetItem(QTreeWidget * pTreeWidget,Type eType,const QString &szName) +: QTreeWidgetItem(pTreeWidget), m_eType(eType), m_pParentNamespaceItem(0), KviHeapObject() { setName(szName); } -KviAliasEditorListViewItem::KviAliasEditorListViewItem(KviAliasNamespaceListViewItem * pParentNamespaceItem,Type eType,const QString &szName) +KviAliasEditorTreeWidgetItem::KviAliasEditorTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespaceItem,Type eType,const QString &szName) : QTreeWidgetItem(pParentNamespaceItem), m_eType(eType), m_pParentNamespaceItem(pParentNamespaceItem) { setName(szName); @@ -72,7 +72,7 @@ KviAliasEditorListViewItem::KviAliasEditorListViewItem(KviAliasNamespaceListView -QString KviAliasEditorListViewItem::key(int column,bool bAsc) const +QString KviAliasEditorTreeWidgetItem::key(int column,bool bAsc) const { QString ret; if(m_eType == Namespace)ret = "1"; @@ -81,14 +81,14 @@ QString KviAliasEditorListViewItem::key(int column,bool bAsc) const return ret; } -void KviAliasEditorListViewItem::setName(const QString &szName) +void KviAliasEditorTreeWidgetItem::setName(const QString &szName) { m_szName = szName; setText(0,m_szName); } -KviAliasListViewItem::KviAliasListViewItem(KviAliasNamespaceListViewItem * pParentNamespaceItem,const QString &szName) -: KviAliasEditorListViewItem(pParentNamespaceItem,KviAliasEditorListViewItem::Alias,szName) +KviAliasTreeWidgetItem::KviAliasTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespaceItem,const QString &szName) +: KviAliasEditorTreeWidgetItem(pParentNamespaceItem,KviAliasEditorTreeWidgetItem::Alias,szName) { setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIAS)))); m_cPos=0; @@ -96,73 +96,73 @@ KviAliasListViewItem::KviAliasListViewItem(KviAliasNamespaceListViewItem * pPare } -KviAliasListViewItem::KviAliasListViewItem(QTreeWidget * pListView,const QString &szName) -: KviAliasEditorListViewItem(pListView,KviAliasEditorListViewItem::Alias,szName) +KviAliasTreeWidgetItem::KviAliasTreeWidgetItem(QTreeWidget * pTreeWidget,const QString &szName) +: KviAliasEditorTreeWidgetItem(pTreeWidget,KviAliasEditorTreeWidgetItem::Alias,szName) { setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIAS)))); m_cPos=0; } -KviAliasListViewItem::~KviAliasListViewItem() +KviAliasTreeWidgetItem::~KviAliasTreeWidgetItem() { } -KviAliasNamespaceListViewItem::KviAliasNamespaceListViewItem(QTreeWidget * pListView,const QString &szName) -: KviAliasEditorListViewItem(pListView,KviAliasEditorListViewItem::Namespace,szName) +KviAliasNamespaceTreeWidgetItem::KviAliasNamespaceTreeWidgetItem(QTreeWidget * pTreeWidget,const QString &szName) +: KviAliasEditorTreeWidgetItem(pTreeWidget,KviAliasEditorTreeWidgetItem::Namespace,szName) { setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_NAMESPACE)))); } -KviAliasNamespaceListViewItem::KviAliasNamespaceListViewItem(KviAliasNamespaceListViewItem * pParentNamespaceItem,const QString &szName) -: KviAliasEditorListViewItem(pParentNamespaceItem,KviAliasEditorListViewItem::Namespace,szName) +KviAliasNamespaceTreeWidgetItem::KviAliasNamespaceTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespaceItem,const QString &szName) +: KviAliasEditorTreeWidgetItem(pParentNamespaceItem,KviAliasEditorTreeWidgetItem::Namespace,szName) { setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_NAMESPACE)))); } -KviAliasNamespaceListViewItem::~KviAliasNamespaceListViewItem() +KviAliasNamespaceTreeWidgetItem::~KviAliasNamespaceTreeWidgetItem() { debug("Deleting %s and pointer %d",this->text(0).toUtf8().data(),this); } -KviAliasNamespaceListViewItem * KviAliasNamespaceListViewItem::findNamespaceItem(const QString &szName) +KviAliasNamespaceTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::findNamespaceItem(const QString &szName) { for (int i=0;i<childCount();i++) { - if (((KviAliasEditorListViewItem *)child(i))->isNamespace()) - if(KviQString::equalCI(szName,((KviAliasEditorListViewItem *)child(i))->name()))return (KviAliasNamespaceListViewItem *)child(i); + if (((KviAliasEditorTreeWidgetItem *)child(i))->isNamespace()) + if(KviQString::equalCI(szName,((KviAliasEditorTreeWidgetItem *)child(i))->name()))return (KviAliasNamespaceTreeWidgetItem *)child(i); } return 0; } -KviAliasNamespaceListViewItem * KviAliasNamespaceListViewItem::getNamespaceItem(const QString &szName) +KviAliasNamespaceTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::getNamespaceItem(const QString &szName) { - KviAliasNamespaceListViewItem * it = findNamespaceItem(szName); + KviAliasNamespaceTreeWidgetItem * it = findNamespaceItem(szName); if(it)return it; - it = new KviAliasNamespaceListViewItem(this,szName); + it = new KviAliasNamespaceTreeWidgetItem(this,szName); return it; } -KviAliasListViewItem * KviAliasNamespaceListViewItem::findAliasItem(const QString &szName) +KviAliasTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::findAliasItem(const QString &szName) { for (int i=0;i<childCount();i++) { - if (((KviAliasEditorListViewItem *)child(i))->isAlias()) - if(KviQString::equalCI(szName,((KviAliasEditorListViewItem *)child(i))->name()))return (KviAliasListViewItem *)child(i); + if (((KviAliasEditorTreeWidgetItem *)child(i))->isAlias()) + if(KviQString::equalCI(szName,((KviAliasEditorTreeWidgetItem *)child(i))->name()))return (KviAliasTreeWidgetItem *)child(i); } return 0; } -KviAliasListViewItem * KviAliasNamespaceListViewItem::getAliasItem(const QString &szName) +KviAliasTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::getAliasItem(const QString &szName) { - KviAliasListViewItem * it = findAliasItem(szName); + KviAliasTreeWidgetItem * it = findAliasItem(szName); if(it)return it; - it = new KviAliasListViewItem(this,szName); + it = new KviAliasTreeWidgetItem(this,szName); return it; } -KviAliasListViewItem * KviAliasNamespaceListViewItem::createFullAliasItem(const QString &szFullName) +KviAliasTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::createFullAliasItem(const QString &szFullName) { QStringList lNamespaces; QString szName; @@ -173,7 +173,7 @@ KviAliasListViewItem * KviAliasNamespaceListViewItem::createFullAliasItem(const QStringList::Iterator it = lNamespaces.begin(); - KviAliasNamespaceListViewItem * nit = getNamespaceItem(*it); + KviAliasNamespaceTreeWidgetItem * nit = getNamespaceItem(*it); ++it; while(it != lNamespaces.end()) { @@ -184,7 +184,7 @@ KviAliasListViewItem * KviAliasNamespaceListViewItem::createFullAliasItem(const return nit->getAliasItem(szName); } -KviAliasNamespaceListViewItem * KviAliasNamespaceListViewItem::createFullNamespaceItem(const QString &szFullName) +KviAliasNamespaceTreeWidgetItem * KviAliasNamespaceTreeWidgetItem::createFullNamespaceItem(const QString &szFullName) { QStringList lNamespaces; QString szName; @@ -195,7 +195,7 @@ KviAliasNamespaceListViewItem * KviAliasNamespaceListViewItem::createFullNamespa QStringList::Iterator it = lNamespaces.begin(); - KviAliasNamespaceListViewItem * nit = getNamespaceItem(*it); + KviAliasNamespaceTreeWidgetItem * nit = getNamespaceItem(*it); ++it; while(it != lNamespaces.end()) { @@ -205,7 +205,7 @@ KviAliasNamespaceListViewItem * KviAliasNamespaceListViewItem::createFullNamespa return nit->getNamespaceItem(szName); } -KviAliasEditorListView::KviAliasEditorListView(QWidget * par) +KviAliasEditorTreeWidget::KviAliasEditorTreeWidget(QWidget * par) : QTreeWidget(par) { setColumnCount (1); @@ -215,7 +215,7 @@ KviAliasEditorListView::KviAliasEditorListView(QWidget * par) setRootIsDecorated(true); setAnimated(true); } -void KviAliasEditorListView::mousePressEvent (QMouseEvent *e) +void KviAliasEditorTreeWidget::mousePressEvent (QMouseEvent *e) { if (e->button() == Qt::RightButton) { @@ -241,7 +241,7 @@ KviAliasEditor::KviAliasEditor(QWidget * par) box->setSpacing(0); box->setMargin(0); - m_pListView = new KviAliasEditorListView(box); + m_pTreeWidget = new KviAliasEditorTreeWidget(box); box = new KviTalVBox(m_pSplitter); @@ -271,66 +271,66 @@ KviAliasEditor::~KviAliasEditor() KviScriptEditor::destroyInstance(m_pEditor); } -KviAliasNamespaceListViewItem * KviAliasEditor::findNamespaceItem(const QString &szName) +KviAliasNamespaceTreeWidgetItem * KviAliasEditor::findNamespaceItem(const QString &szName) { - int count=m_pListView->topLevelItemCount(); + int count=m_pTreeWidget->topLevelItemCount(); for (int i=0;i<count;i++) { - KviAliasNamespaceListViewItem * item=(KviAliasNamespaceListViewItem *)m_pListView->topLevelItem(i); + KviAliasNamespaceTreeWidgetItem * item=(KviAliasNamespaceTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); if(KviQString::equalCI(szName,item->name())) return item; } return 0; } -KviAliasNamespaceListViewItem * KviAliasEditor::getNamespaceItem(const QString &szName) +KviAliasNamespaceTreeWidgetItem * KviAliasEditor::getNamespaceItem(const QString &szName) { - KviAliasNamespaceListViewItem * it = findNamespaceItem(szName); + KviAliasNamespaceTreeWidgetItem * it = findNamespaceItem(szName); if(it)return it; - it = new KviAliasNamespaceListViewItem(m_pListView,szName); + it = new KviAliasNamespaceTreeWidgetItem(m_pTreeWidget,szName); return it; } -KviAliasListViewItem * KviAliasEditor::findAliasItemRecursive(KviAliasEditorListViewItem *parent,const QString &szName) +KviAliasTreeWidgetItem * KviAliasEditor::findAliasItemRecursive(KviAliasEditorTreeWidgetItem *parent,const QString &szName) { for (int i=0;i<parent->childCount();i++) { - KviAliasEditorListViewItem *item=(KviAliasEditorListViewItem *)parent->child(i); + KviAliasEditorTreeWidgetItem *item=(KviAliasEditorTreeWidgetItem *)parent->child(i); if (!item->isAlias()){ - KviAliasListViewItem * itemret=findAliasItemRecursive(item,szName); - if (itemret) return (KviAliasListViewItem*)itemret; + KviAliasTreeWidgetItem * itemret=findAliasItemRecursive(item,szName); + if (itemret) return (KviAliasTreeWidgetItem*)itemret; } else{ if(KviQString::equalCI(szName,item->name())) - return (KviAliasListViewItem*)item; + return (KviAliasTreeWidgetItem*)item; } } return false; } -KviAliasListViewItem * KviAliasEditor::findAliasItem(const QString &szName) +KviAliasTreeWidgetItem * KviAliasEditor::findAliasItem(const QString &szName) { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - KviAliasEditorListViewItem *item=(KviAliasEditorListViewItem *)m_pListView->topLevelItem(i); + KviAliasEditorTreeWidgetItem *item=(KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); if (!item->isAlias()) { - KviAliasListViewItem * it=findAliasItemRecursive(item,szName); + KviAliasTreeWidgetItem * it=findAliasItemRecursive(item,szName); if (it) return it; } else { - if(KviQString::equalCI(szName,item->name())) return (KviAliasListViewItem*)item; + if(KviQString::equalCI(szName,item->name())) return (KviAliasTreeWidgetItem*)item; } } return false; } -KviAliasListViewItem * KviAliasEditor::getAliasItem(const QString &szName) +KviAliasTreeWidgetItem * KviAliasEditor::getAliasItem(const QString &szName) { - KviAliasListViewItem * it = findAliasItem(szName); + KviAliasTreeWidgetItem * it = findAliasItem(szName); if(it)return it; - it = new KviAliasListViewItem(m_pListView,szName); + it = new KviAliasTreeWidgetItem(m_pTreeWidget,szName); return it; } @@ -347,11 +347,11 @@ void KviAliasEditor::splitFullAliasOrNamespaceName(const QString &szFullName,QSt lNamespaces.removeLast(); } -QString KviAliasEditor::buildFullItemName(KviAliasEditorListViewItem * it) +QString KviAliasEditor::buildFullItemName(KviAliasEditorTreeWidgetItem * it) { if(!it) return QString::null; QString szName = it->name(); - KviAliasNamespaceListViewItem * nit = it->parentNamespaceItem(); + KviAliasNamespaceTreeWidgetItem * nit = it->parentNamespaceItem(); while(nit) { QString tmp = nit->name(); @@ -366,7 +366,7 @@ QString KviAliasEditor::buildFullItemName(KviAliasEditorListViewItem * it) } -KviAliasListViewItem * KviAliasEditor::createFullAliasItem(const QString &szFullName) +KviAliasTreeWidgetItem * KviAliasEditor::createFullAliasItem(const QString &szFullName) { QStringList lNamespaces; QString szName; @@ -377,7 +377,7 @@ KviAliasListViewItem * KviAliasEditor::createFullAliasItem(const QString &szFull QStringList::Iterator it = lNamespaces.begin(); - KviAliasNamespaceListViewItem * nit = getNamespaceItem(*it); + KviAliasNamespaceTreeWidgetItem * nit = getNamespaceItem(*it); ++it; while(it != lNamespaces.end()) { @@ -388,7 +388,7 @@ KviAliasListViewItem * KviAliasEditor::createFullAliasItem(const QString &szFull return nit->getAliasItem(szName); } -KviAliasNamespaceListViewItem * KviAliasEditor::createFullNamespaceItem(const QString &szFullName) +KviAliasNamespaceTreeWidgetItem * KviAliasEditor::createFullNamespaceItem(const QString &szFullName) { QStringList lNamespaces; QString szName; @@ -399,7 +399,7 @@ KviAliasNamespaceListViewItem * KviAliasEditor::createFullNamespaceItem(const QS QStringList::Iterator it = lNamespaces.begin(); - KviAliasNamespaceListViewItem * nit = getNamespaceItem(*it); + KviAliasNamespaceTreeWidgetItem * nit = getNamespaceItem(*it); ++it; while(it != lNamespaces.end()) { @@ -417,7 +417,7 @@ void KviAliasEditor::oneTimeSetup() KviPointerHashTableIterator<QString,KviKvsScript> it(*a); - KviAliasListViewItem * item; + KviAliasTreeWidgetItem * item; while(it.current()) { KviKvsScript * alias = it.current(); @@ -426,21 +426,21 @@ void KviAliasEditor::oneTimeSetup() ++it; } - connect(m_pListView,SIGNAL(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *)),this,SLOT(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *))); - connect(m_pListView,SIGNAL(rightButtonPressed(QTreeWidgetItem *,QPoint)), + connect(m_pTreeWidget,SIGNAL(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *)),this,SLOT(currentItemChanged(QTreeWidgetItem *,QTreeWidgetItem *))); + connect(m_pTreeWidget,SIGNAL(rightButtonPressed(QTreeWidgetItem *,QPoint)), this,SLOT(itemPressed(QTreeWidgetItem *,QPoint))); - connect(m_pListView,SIGNAL(itemChanged(QTreeWidgetItem *,int)),this,SLOT(itemRenamed(QTreeWidgetItem *,int))); + connect(m_pTreeWidget,SIGNAL(itemChanged(QTreeWidgetItem *,int)),this,SLOT(itemRenamed(QTreeWidgetItem *,int))); - m_pListView->sortItems(0,Qt::AscendingOrder); + m_pTreeWidget->sortItems(0,Qt::AscendingOrder); } void KviAliasEditor::itemRenamed(QTreeWidgetItem *it,int col) { - ((KviAliasEditorListViewItem *)it)->setName(it->text(col)); - QString szNam = buildFullItemName((KviAliasEditorListViewItem *)it); + ((KviAliasEditorTreeWidgetItem *)it)->setName(it->text(col)); + QString szNam = buildFullItemName((KviAliasEditorTreeWidgetItem *)it); QString szLabelText; - if(((KviAliasEditorListViewItem *)it)->isNamespace()) + if(((KviAliasEditorTreeWidgetItem *)it)->isNamespace()) szLabelText = __tr2qs("Namespace"); else szLabelText = __tr2qs("Alias"); @@ -453,16 +453,16 @@ bool KviAliasEditor::hasSelectedItemsRecursive(QTreeWidgetItem *it) { for (int i=0;i<it->childCount();i++) { - if (!it->child(i)->isSelected()) hasSelectedItemsRecursive((KviAliasEditorListViewItem *)it->child(i)); + if (!it->child(i)->isSelected()) hasSelectedItemsRecursive((KviAliasEditorTreeWidgetItem *)it->child(i)); else return true; } return false; } bool KviAliasEditor::hasSelectedItems() { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if (hasSelectedItemsRecursive(m_pListView->topLevelItem(i))) return true; + if (hasSelectedItemsRecursive(m_pTreeWidget->topLevelItem(i))) return true; } return false; } @@ -471,16 +471,16 @@ bool KviAliasEditor::itemExists(QTreeWidgetItem *pSearchFor) debug("Check if %s exists",pSearchFor->text(0).toUtf8().data()); if(!pSearchFor)return false; - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { debug("Check in top level %d",i); - if(m_pListView->topLevelItem(i)==pSearchFor) return true; + if(m_pTreeWidget->topLevelItem(i)==pSearchFor) return true; else { - if(!((KviAliasEditorListViewItem *)m_pListView->topLevelItem(i))->isAlias()) + if(!((KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->isAlias()) { - debug ("search into name space %s",m_pListView->topLevelItem(i)->text(0).toUtf8().data()); - if (itemExistsRecursive(pSearchFor,m_pListView->topLevelItem(i))) return true; + debug ("search into name space %s",m_pTreeWidget->topLevelItem(i)->text(0).toUtf8().data()); + if (itemExistsRecursive(pSearchFor,m_pTreeWidget->topLevelItem(i))) return true; } } } @@ -495,7 +495,7 @@ bool KviAliasEditor::itemExistsRecursive(QTreeWidgetItem *pSearchFor,QTreeWidget if(pSearchFor == pSearchAt->child(i))return true; else { - //if(!((KviAliasEditorListViewItem *)pSearchAt->child(i))->isAlias()) + //if(!((KviAliasEditorTreeWidgetItem *)pSearchAt->child(i))->isAlias()) if (pSearchAt->child(i)->childCount()) { if (itemExistsRecursive(pSearchFor,pSearchAt->child(i))) return true; } @@ -508,7 +508,7 @@ void KviAliasEditor::itemPressed(QTreeWidgetItem *it,QPoint pnt) { m_pContextPopup->clear(); - m_pLastClickedItem = (KviAliasEditorListViewItem *)it; + m_pLastClickedItem = (KviAliasEditorTreeWidgetItem *)it; int id; @@ -522,7 +522,7 @@ void KviAliasEditor::itemPressed(QTreeWidgetItem *it,QPoint pnt) __tr2qs("Add Namespace"), this,SLOT(newNamespace())); - bool bHasItems = m_pListView->topLevelItemCount(); + bool bHasItems = m_pTreeWidget->topLevelItemCount(); bool bHasSelected = hasSelectedItems(); m_pContextPopup->insertSeparator(); @@ -571,29 +571,29 @@ void KviAliasEditor::itemPressed(QTreeWidgetItem *it,QPoint pnt) m_pContextPopup->popup(pnt); } -void KviAliasEditor::recursiveSearchReplace(const QString &szSearch,KviAliasEditorListViewItem * it,bool bReplace,const QString &szReplace) +void KviAliasEditor::recursiveSearchReplace(const QString &szSearch,KviAliasEditorTreeWidgetItem * it,bool bReplace,const QString &szReplace) { if(!it)return; for(int i=0;i< it->childCount();i++) { - if(((KviAliasListViewItem *)it->child(i))->isAlias()) + if(((KviAliasTreeWidgetItem *)it->child(i))->isAlias()) { - if(((KviAliasListViewItem *)it->child(i))->buffer().indexOf(szSearch,0,Qt::CaseInsensitive) != -1) + if(((KviAliasTreeWidgetItem *)it->child(i))->buffer().indexOf(szSearch,0,Qt::CaseInsensitive) != -1) { it->child(i)->setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIASHIGHLIGHTED)))); - if (bReplace) ((QString &)((KviAliasListViewItem *)it->child(i))->buffer()).replace(szSearch,szReplace,Qt::CaseInsensitive); + if (bReplace) ((QString &)((KviAliasTreeWidgetItem *)it->child(i))->buffer()).replace(szSearch,szReplace,Qt::CaseInsensitive); openParentItems(it); } //else //it->child(i)->setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIAS)))); } else { - recursiveSearchReplace(szSearch,(KviAliasEditorListViewItem *)(it->child(i)),bReplace,szReplace); + recursiveSearchReplace(szSearch,(KviAliasEditorTreeWidgetItem *)(it->child(i)),bReplace,szReplace); } } //} - //recursiveSearchReplace(szSearch,(KviAliasEditorListViewItem *)(it->nextSibling()),bReplace,szReplace); + //recursiveSearchReplace(szSearch,(KviAliasEditorTreeWidgetItem *)(it->nextSibling()),bReplace,szReplace); } @@ -615,17 +615,17 @@ void KviAliasEditor::slotFind() if(!bOk)return; if(szSearch.isEmpty())return; m_pEditor->setFindText(szSearch); - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if(((KviAliasListViewItem *)m_pListView->topLevelItem(i))->isAlias()) + if(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->isAlias()) { - if(((KviAliasListViewItem *)m_pListView->topLevelItem(i))->buffer().indexOf(szSearch,0,Qt::CaseInsensitive) != -1) + if(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->buffer().indexOf(szSearch,0,Qt::CaseInsensitive) != -1) { - m_pListView->topLevelItem(i)->setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIASHIGHLIGHTED)))); + m_pTreeWidget->topLevelItem(i)->setIcon(0,QIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_ALIASHIGHLIGHTED)))); } } else { - recursiveSearchReplace(szSearch,(KviAliasEditorListViewItem *)m_pListView->topLevelItem(i)); + recursiveSearchReplace(szSearch,(KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i)); } } } @@ -634,11 +634,11 @@ void KviAliasEditor::slotFindWord(const QString &szSearch) { m_pEditor->setFindText(szSearch); -// recursiveSearchReplace(szSearch,(KviAliasEditorListViewItem *)m_pListView->firstChild()); +// recursiveSearchReplace(szSearch,(KviAliasEditorTreeWidgetItem *)m_pTreeWidget->firstChild()); } -void KviAliasEditor::recursiveCollapseNamespaces(KviAliasEditorListViewItem * it) +void KviAliasEditor::recursiveCollapseNamespaces(KviAliasEditorTreeWidgetItem * it) { if(!it)return; for (int i=0;i<it->childCount();i++) @@ -646,32 +646,32 @@ void KviAliasEditor::recursiveCollapseNamespaces(KviAliasEditorListViewItem * it if(it->child(i)->childCount()) { it->child(i)->setExpanded(false); - recursiveCollapseNamespaces((KviAliasEditorListViewItem *)it->child(i)); + recursiveCollapseNamespaces((KviAliasEditorTreeWidgetItem *)it->child(i)); } } -// recursiveCollapseNamespaces((KviAliasEditorListViewItem *)(it->nextSibling())); +// recursiveCollapseNamespaces((KviAliasEditorTreeWidgetItem *)(it->nextSibling())); // it->setExpanded(false); } void KviAliasEditor::slotCollapseNamespaces() { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if (m_pListView->topLevelItem(i)->childCount()){ - m_pListView->topLevelItem(i)->setExpanded(false); - recursiveCollapseNamespaces((KviAliasEditorListViewItem *)m_pListView->topLevelItem(i)); + if (m_pTreeWidget->topLevelItem(i)->childCount()){ + m_pTreeWidget->topLevelItem(i)->setExpanded(false); + recursiveCollapseNamespaces((KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i)); } } - //recursiveCollapseNamespaces((KviAliasEditorListViewItem *)m_pListView->firstChild()); + //recursiveCollapseNamespaces((KviAliasEditorTreeWidgetItem *)m_pTreeWidget->firstChild()); } void KviAliasEditor::slotReplaceAll(const QString &before,const QString &after) { - //recursiveSearchReplace(before,(KviAliasEditorListViewItem *)m_pListView->firstChild(),true,after); + //recursiveSearchReplace(before,(KviAliasEditorTreeWidgetItem *)m_pTreeWidget->firstChild(),true,after); } -void KviAliasEditor::getExportAliasBuffer(QString &buffer,KviAliasListViewItem * it) +void KviAliasEditor::getExportAliasBuffer(QString &buffer,KviAliasTreeWidgetItem * it) { QString szBuf = it->buffer(); KviCommandFormatter::blockFromBuffer(szBuf); @@ -699,7 +699,7 @@ void KviAliasEditor::exportSelected() exportAliases(true); } -void KviAliasEditor::exportSelectionInSinglesFiles(KviPointerList<KviAliasListViewItem> *l) +void KviAliasEditor::exportSelectionInSinglesFiles(KviPointerList<KviAliasTreeWidgetItem> *l) { if(!m_szDir.endsWith(QString(KVI_PATH_SEPARATOR)))m_szDir += KVI_PATH_SEPARATOR; debug ("dir %s",m_szDir.toUtf8().data()); @@ -722,7 +722,7 @@ void KviAliasEditor::exportSelectionInSinglesFiles(KviPointerList<KviAliasListVi bool bReplaceAll=false; - for(KviAliasListViewItem * it = l->first();it;it = l->next()) + for(KviAliasTreeWidgetItem * it = l->first();it;it = l->next()) { QString tmp; getExportAliasBuffer(tmp,it); @@ -754,7 +754,7 @@ void KviAliasEditor::exportAliases(bool bSelectedOnly,bool bSingleFiles) { saveLastEditedItem(); - KviPointerList<KviAliasListViewItem> l; + KviPointerList<KviAliasTreeWidgetItem> l; l.setAutoDelete(false); QString out; @@ -767,8 +767,8 @@ void KviAliasEditor::exportAliases(bool bSelectedOnly,bool bSingleFiles) } int count=0; - KviAliasListViewItem * tempitem=0; - for(KviAliasListViewItem * it = l.first();it;it = l.next()) + KviAliasTreeWidgetItem * tempitem=0; + for(KviAliasTreeWidgetItem * it = l.first();it;it = l.next()) { tempitem=it; count ++; @@ -833,55 +833,55 @@ void KviAliasEditor::loadProperties(KviConfig *cfg) m_pSplitter->setSizes(cfg->readIntListEntry("Sizes",def)); QString tmp = cfg->readEntry("LastAlias",QString::null); - KviAliasEditorListViewItem * it = findAliasItem(tmp); + KviAliasEditorTreeWidgetItem * it = findAliasItem(tmp); if(!it)it = findNamespaceItem(tmp); if(it)activateItem(it); } -void KviAliasEditor::appendAliasItems(KviPointerList<KviAliasListViewItem> * l,bool bSelectedOnly) +void KviAliasEditor::appendAliasItems(KviPointerList<KviAliasTreeWidgetItem> * l,bool bSelectedOnly) { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if (((KviAliasListViewItem *)m_pListView->topLevelItem(i))->isAlias()) + if (((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->isAlias()) { if(bSelectedOnly) { - if(m_pListView->topLevelItem(i)->isSelected()) - l->append(((KviAliasListViewItem *)m_pListView->topLevelItem(i))); + if(m_pTreeWidget->topLevelItem(i)->isSelected()) + l->append(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))); } else { - l->append(((KviAliasListViewItem *)m_pListView->topLevelItem(i))); + l->append(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))); } } else { if(bSelectedOnly) { - if(m_pListView->topLevelItem(i)->isSelected()) - appendAliasItemsRecursive(l,m_pListView->topLevelItem(i),false); + if(m_pTreeWidget->topLevelItem(i)->isSelected()) + appendAliasItemsRecursive(l,m_pTreeWidget->topLevelItem(i),false); else - appendAliasItemsRecursive(l,m_pListView->topLevelItem(i),true); + appendAliasItemsRecursive(l,m_pTreeWidget->topLevelItem(i),true); } else - appendAliasItemsRecursive(l,m_pListView->topLevelItem(i),false); + appendAliasItemsRecursive(l,m_pTreeWidget->topLevelItem(i),false); } } } -void KviAliasEditor::appendAliasItemsRecursive(KviPointerList<KviAliasListViewItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly) +void KviAliasEditor::appendAliasItemsRecursive(KviPointerList<KviAliasTreeWidgetItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly) { for (int i=0;i<pStartFrom->childCount();i++) { - if (((KviAliasListViewItem *)pStartFrom->child(i))->isAlias()) + if (((KviAliasTreeWidgetItem *)pStartFrom->child(i))->isAlias()) { if(bSelectedOnly) { if(pStartFrom->child(i)->isSelected()) - l->append((KviAliasListViewItem *)pStartFrom->child(i)); + l->append((KviAliasTreeWidgetItem *)pStartFrom->child(i)); } else { - l->append((KviAliasListViewItem *)pStartFrom->child(i)); + l->append((KviAliasTreeWidgetItem *)pStartFrom->child(i)); } } else @@ -901,51 +901,51 @@ void KviAliasEditor::appendAliasItemsRecursive(KviPointerList<KviAliasListViewIt } -void KviAliasEditor::appendNamespaceItems(KviPointerList<KviAliasListViewItem> * l,bool bSelectedOnly) +void KviAliasEditor::appendNamespaceItems(KviPointerList<KviAliasTreeWidgetItem> * l,bool bSelectedOnly) { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if (((KviAliasListViewItem *)m_pListView->topLevelItem(i))->isNamespace()) + if (((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))->isNamespace()) { if(bSelectedOnly) { - if(m_pListView->topLevelItem(i)->isSelected()) - l->append(((KviAliasListViewItem *)m_pListView->topLevelItem(i))); + if(m_pTreeWidget->topLevelItem(i)->isSelected()) + l->append(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))); } else { - l->append(((KviAliasListViewItem *)m_pListView->topLevelItem(i))); + l->append(((KviAliasTreeWidgetItem *)m_pTreeWidget->topLevelItem(i))); } } else { if(bSelectedOnly) { - if(m_pListView->topLevelItem(i)->isSelected()) - appendNamespaceItemsRecursive(l,m_pListView->topLevelItem(i),false); + if(m_pTreeWidget->topLevelItem(i)->isSelected()) + appendNamespaceItemsRecursive(l,m_pTreeWidget->topLevelItem(i),false); else - appendNamespaceItemsRecursive(l,m_pListView->topLevelItem(i),true); + appendNamespaceItemsRecursive(l,m_pTreeWidget->topLevelItem(i),true); } else - appendNamespaceItemsRecursive(l,m_pListView->topLevelItem(i),false); + appendNamespaceItemsRecursive(l,m_pTreeWidget->topLevelItem(i),false); } } } -void KviAliasEditor::appendNamespaceItemsRecursive(KviPointerList<KviAliasListViewItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly) +void KviAliasEditor::appendNamespaceItemsRecursive(KviPointerList<KviAliasTreeWidgetItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly) { for (int i=0;i<pStartFrom->childCount();i++) { - if (((KviAliasListViewItem *)pStartFrom->child(i))->isNamespace()) + if (((KviAliasTreeWidgetItem *)pStartFrom->child(i))->isNamespace()) { if(bSelectedOnly) { if(pStartFrom->child(i)->isSelected()) - l->append((KviAliasListViewItem *)pStartFrom->child(i)); + l->append((KviAliasTreeWidgetItem *)pStartFrom->child(i)); } else { - l->append((KviAliasListViewItem *)pStartFrom->child(i)); + l->append((KviAliasTreeWidgetItem *)pStartFrom->child(i)); } } else @@ -964,14 +964,14 @@ void KviAliasEditor::appendNamespaceItemsRecursive(KviPointerList<KviAliasListVi } -void KviAliasEditor::appendSelectedItemsRecursive(KviPointerList<KviAliasEditorListViewItem> * l,QTreeWidgetItem *it) +void KviAliasEditor::appendSelectedItemsRecursive(KviPointerList<KviAliasEditorTreeWidgetItem> * l,QTreeWidgetItem *it) { for (int i=0;i<it->childCount();i++) { if (it->child(i)->isSelected()) { - l->append((KviAliasEditorListViewItem *)it->child(i)); + l->append((KviAliasEditorTreeWidgetItem *)it->child(i)); } else { @@ -980,32 +980,32 @@ void KviAliasEditor::appendSelectedItemsRecursive(KviPointerList<KviAliasEditorL } } } -void KviAliasEditor::appendSelectedItems(KviPointerList<KviAliasEditorListViewItem> * l) +void KviAliasEditor::appendSelectedItems(KviPointerList<KviAliasEditorTreeWidgetItem> * l) { - for (int i=0;i<m_pListView->topLevelItemCount();i++) + for (int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - if (m_pListView->topLevelItem(i)->isSelected()) + if (m_pTreeWidget->topLevelItem(i)->isSelected()) { - l->append((KviAliasEditorListViewItem *)m_pListView->topLevelItem(i)); + l->append((KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i)); } else { - if (m_pListView->topLevelItem(i)->childCount()) - appendSelectedItemsRecursive(l,m_pListView->topLevelItem(i)); + if (m_pTreeWidget->topLevelItem(i)->childCount()) + appendSelectedItemsRecursive(l,m_pTreeWidget->topLevelItem(i)); } } } -void KviAliasEditor::removeItemChildren(KviAliasEditorListViewItem *it) +void KviAliasEditor::removeItemChildren(KviAliasEditorTreeWidgetItem *it) { debug("Deleting"); for (int i=0;i<it->childCount();i++) { - if (it->child(i)->childCount()) removeItemChildren((KviAliasEditorListViewItem *)it->child(i)); + if (it->child(i)->childCount()) removeItemChildren((KviAliasEditorTreeWidgetItem *)it->child(i)); delete it->child(i); } } -bool KviAliasEditor::removeItem(KviAliasEditorListViewItem *it,bool * pbYesToAll,bool bDeleteEmptyTree) +bool KviAliasEditor::removeItem(KviAliasEditorTreeWidgetItem *it,bool * pbYesToAll,bool bDeleteEmptyTree) { if(!it)return true; QString szMsg; @@ -1051,7 +1051,7 @@ bool KviAliasEditor::removeItem(KviAliasEditorListViewItem *it,bool * pbYesToAll { while(it) { - KviAliasEditorListViewItem * par = (KviAliasEditorListViewItem *)(it->parent()); + KviAliasEditorTreeWidgetItem * par = (KviAliasEditorTreeWidgetItem *)(it->parent()); delete it; if(par) { @@ -1070,12 +1070,12 @@ bool KviAliasEditor::removeItem(KviAliasEditorListViewItem *it,bool * pbYesToAll void KviAliasEditor::removeSelectedItems() { - KviPointerList<KviAliasEditorListViewItem> l; + KviPointerList<KviAliasEditorTreeWidgetItem> l; l.setAutoDelete(false); appendSelectedItems(&l); bool bYesToAll = false; - for(KviAliasEditorListViewItem *it = l.first();it;it = l.next()) + for(KviAliasEditorTreeWidgetItem *it = l.first();it;it = l.next()) { if(!removeItem(it,&bYesToAll,false))return; } @@ -1244,8 +1244,8 @@ void KviAliasEditor::selectOneItem(QTreeWidgetItem * it,QTreeWidgetItem *pStartF void KviAliasEditor::activateItem(QTreeWidgetItem * it) { openParentItems(it); - //selectOneItem(it,m_pListView->child(0)); - m_pListView->setCurrentItem(it); + //selectOneItem(it,m_pTreeWidget->child(0)); + m_pTreeWidget->setCurrentItem(it); } void KviAliasEditor::newAlias() @@ -1260,12 +1260,12 @@ void KviAliasEditor::newAlias() QString szNewName = askForAliasName(__tr2qs("Add Alias"),__tr2qs("Please enter the name for the new alias"),"myfunction"); if(szNewName.isEmpty())return; - getUniqueItemName(m_pLastClickedItem,szNewName,KviAliasEditorListViewItem::Alias); + getUniqueItemName(m_pLastClickedItem,szNewName,KviAliasEditorTreeWidgetItem::Alias); - KviAliasListViewItem * it; + KviAliasTreeWidgetItem * it; if(m_pLastClickedItem) - it = ((KviAliasNamespaceListViewItem *)m_pLastClickedItem)->createFullAliasItem(szNewName); + it = ((KviAliasNamespaceTreeWidgetItem *)m_pLastClickedItem)->createFullAliasItem(szNewName); else it = createFullAliasItem(szNewName); @@ -1285,12 +1285,12 @@ void KviAliasEditor::newNamespace() QString szNewName = askForNamespaceName(__tr2qs("Add Namespace"),__tr2qs("Please enter the name for the new namespace"),"mynamespace"); if(szNewName.isEmpty())return; - getUniqueItemName(m_pLastClickedItem,szNewName,KviAliasEditorListViewItem::Namespace); + getUniqueItemName(m_pLastClickedItem,szNewName,KviAliasEditorTreeWidgetItem::Namespace); - KviAliasNamespaceListViewItem * it; + KviAliasNamespaceTreeWidgetItem * it; if(m_pLastClickedItem) - it = ((KviAliasNamespaceListViewItem *)m_pLastClickedItem)->createFullNamespaceItem(szNewName); + it = ((KviAliasNamespaceTreeWidgetItem *)m_pLastClickedItem)->createFullNamespaceItem(szNewName); else it = createFullNamespaceItem(szNewName); @@ -1299,11 +1299,11 @@ void KviAliasEditor::newNamespace() bool KviAliasEditor::aliasExists(QString &szFullItemName) { - KviPointerList<KviAliasListViewItem> l; + KviPointerList<KviAliasTreeWidgetItem> l; l.setAutoDelete(false); appendAliasItems(&l,false); - for(KviAliasListViewItem * it = l.first();it;it = l.next()) + for(KviAliasTreeWidgetItem * it = l.first();it;it = l.next()) { if (KviQString::equalCI(buildFullItemName(it),szFullItemName)) { @@ -1315,11 +1315,11 @@ bool KviAliasEditor::aliasExists(QString &szFullItemName) bool KviAliasEditor::namespaceExists(QString &szFullItemName) { - KviPointerList<KviAliasListViewItem> l; + KviPointerList<KviAliasTreeWidgetItem> l; l.setAutoDelete(false); appendNamespaceItems(&l,false); - for(KviAliasListViewItem * it = l.first();it;it = l.next()) + for(KviAliasTreeWidgetItem * it = l.first();it;it = l.next()) { if (KviQString::equalCI(buildFullItemName(it),szFullItemName)) { @@ -1329,11 +1329,11 @@ bool KviAliasEditor::namespaceExists(QString &szFullItemName) return false; } /* -void KviAliasEditor::appendItems(KviPointerList<KviAliasEditorListViewItem> * l,QTreeWidgetItem *it) +void KviAliasEditor::appendItems(KviPointerList<KviAliasEditorTreeWidgetItem> * l,QTreeWidgetItem *it) { for (int i=0;i<it->childCount();i++) { - l->append((KviAliasEditorListViewItem *) it->child(i); + l->append((KviAliasEditorTreeWidgetItem *) it->child(i); if(it->child(i)->childCount()) appendItemd(it->child(i)); } } @@ -1404,7 +1404,7 @@ void KviAliasEditor::renameItem() } */ /* for(it = lChildren.first();it;it = lChildren.next()) - m_pListView->takeItem(it); + m_pTreeWidget->takeItem(it); */ bool bYesToAll = true; removeItem(m_pLastEditedItem,&bYesToAll,true); @@ -1414,18 +1414,18 @@ void KviAliasEditor::renameItem() if(bAlias) { - KviAliasListViewItem * ait = createFullAliasItem(szNewName); + KviAliasTreeWidgetItem * ait = createFullAliasItem(szNewName); ait->setBuffer(szCode); ait->setCursorPosition(pntCursor); activateItem(ait); } else { - KviAliasNamespaceListViewItem * nit = createFullNamespaceItem(szNewName); + KviAliasNamespaceTreeWidgetItem * nit = createFullNamespaceItem(szNewName); activateItem(nit); for(int i=0;i<lChildren.count();i++) { - ((KviAliasEditorListViewItem*)lChildren.at(i))->setParentNamespaceItem(nit); + ((KviAliasEditorTreeWidgetItem*)lChildren.at(i))->setParentNamespaceItem(nit); nit->insertChild(nit->childCount(),lChildren.at(i)); } @@ -1440,21 +1440,21 @@ void KviAliasEditor::saveLastEditedItem() if(!m_pEditor->isModified()){debug ("Alreary saved");return;} // nothing to save if(!itemExists(m_pLastEditedItem)){debug("Item does not exists");return;} // dead ? debug("Check last edit item %s",m_pLastEditedItem->text(0).toUtf8().data()); - ((KviAliasListViewItem *)m_pLastEditedItem)->setCursorPosition(m_pEditor->getCursor()); + ((KviAliasTreeWidgetItem *)m_pLastEditedItem)->setCursorPosition(m_pEditor->getCursor()); if(m_pLastEditedItem->isNamespace()){debug("Is namespace");return;} QString newCode; m_pEditor->getText(newCode); debug("Saving %s",newCode.toUtf8().data()); - ((KviAliasListViewItem *)m_pLastEditedItem)->setBuffer(newCode); + ((KviAliasTreeWidgetItem *)m_pLastEditedItem)->setBuffer(newCode); } void KviAliasEditor::currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem *prev) { saveLastEditedItem(); - m_pLastEditedItem = (KviAliasEditorListViewItem *)it; + m_pLastEditedItem = (KviAliasEditorTreeWidgetItem *)it; if(!m_pLastEditedItem) { @@ -1485,14 +1485,14 @@ void KviAliasEditor::currentItemChanged(QTreeWidgetItem *it,QTreeWidgetItem *pre szLabelText += "</b>"; m_pNameLabel->setText(szLabelText); m_pRenameButton->setEnabled(true); - m_pEditor->setText(((KviAliasListViewItem *)it)->buffer()); + m_pEditor->setText(((KviAliasTreeWidgetItem *)it)->buffer()); m_pEditor->setFocus(); - m_pEditor->setCursorPosition(((KviAliasListViewItem *)it)->cursorPosition()); + m_pEditor->setCursorPosition(((KviAliasTreeWidgetItem *)it)->cursorPosition()); m_pEditor->setEnabled(true); } -void KviAliasEditor::recursiveCommit(KviAliasEditorListViewItem * it) +void KviAliasEditor::recursiveCommit(KviAliasEditorTreeWidgetItem * it) { if(!it)return; if(it->isAlias()) @@ -1502,14 +1502,14 @@ void KviAliasEditor::recursiveCommit(KviAliasEditorListViewItem * it) //debug("ADDING %s",szName.latin1()); // WARNING: On MSVC operator new here is valid ONLY because // KviKvsScript has a non virtual detructor! - KviKvsScript * a = new KviKvsScript(szName,((KviAliasListViewItem *)it)->buffer()); + KviKvsScript * a = new KviKvsScript(szName,((KviAliasTreeWidgetItem *)it)->buffer()); KviKvsAliasManager::instance()->add(szName,a); return; } else { for (int i=0;i<it->childCount();i++) { - recursiveCommit((KviAliasEditorListViewItem *) it->child(i)); + recursiveCommit((KviAliasEditorTreeWidgetItem *) it->child(i)); } } } @@ -1518,20 +1518,20 @@ void KviAliasEditor::commit() { saveLastEditedItem(); KviKvsAliasManager::instance()->clear(); - for(int i=0;i<m_pListView->topLevelItemCount();i++) + for(int i=0;i<m_pTreeWidget->topLevelItemCount();i++) { - KviAliasEditorListViewItem *item=(KviAliasEditorListViewItem *)m_pListView->topLevelItem(i); + KviAliasEditorTreeWidgetItem *item=(KviAliasEditorTreeWidgetItem *)m_pTreeWidget->topLevelItem(i); recursiveCommit(item); } g_pApp->saveAliases(); } -void KviAliasEditor::getUniqueItemName(KviAliasEditorListViewItem *item,QString &buffer,KviAliasEditorListViewItem::Type eType) +void KviAliasEditor::getUniqueItemName(KviAliasEditorTreeWidgetItem *item,QString &buffer,KviAliasEditorTreeWidgetItem::Type eType) { QString ret; int idx = 0; - KviAliasEditorListViewItem * found; + KviAliasEditorTreeWidgetItem * found; for(;;) { @@ -1551,12 +1551,12 @@ void KviAliasEditor::getUniqueItemName(KviAliasEditorListViewItem *item,QString return; } - if(eType == KviAliasEditorListViewItem::Namespace) - found = ((KviAliasNamespaceListViewItem *)item)->findNamespaceItem(ret); + if(eType == KviAliasEditorTreeWidgetItem::Namespace) + found = ((KviAliasNamespaceTreeWidgetItem *)item)->findNamespaceItem(ret); else - found = ((KviAliasNamespaceListViewItem *)item)->findAliasItem(ret); + found = ((KviAliasNamespaceTreeWidgetItem *)item)->findAliasItem(ret); } else { - if(eType == KviAliasEditorListViewItem::Namespace) + if(eType == KviAliasEditorTreeWidgetItem::Namespace) found = findNamespaceItem(ret); else found = findAliasItem(ret); diff --git a/src/modules/aliaseditor/aliaseditor.h b/src/modules/aliaseditor/aliaseditor.h index a8a861c5f..449516dea 100644 --- a/src/modules/aliaseditor/aliaseditor.h +++ b/src/modules/aliaseditor/aliaseditor.h @@ -29,7 +29,6 @@ #include "kvi_pointerlist.h" #include "kvi_tal_popupmenu.h" #include "kvi_heapobject.h" -//#include "kvi_tal_listview.h" #include <QWidget> #include <QLineEdit> @@ -40,20 +39,20 @@ class QSplitter; class KviScriptEditor; -class KviAliasNamespaceListViewItem; +class KviAliasNamespaceTreeWidgetItem; +class KviAliasTreeWidgetItem; - -class KviAliasEditorListViewItem : public QTreeWidgetItem, public KviHeapObject +class KviAliasEditorTreeWidgetItem : public QTreeWidgetItem, public KviHeapObject { public: enum Type { Alias, Namespace }; public: - KviAliasEditorListViewItem(QTreeWidget * pListView,Type eType,const QString &szName); - KviAliasEditorListViewItem(KviAliasNamespaceListViewItem * pParentNamespaceItem,Type eType,const QString &szName); - ~KviAliasEditorListViewItem(){}; + KviAliasEditorTreeWidgetItem(QTreeWidget * pTreeWidget,Type eType,const QString &szName); + KviAliasEditorTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespaceItem,Type eType,const QString &szName); + ~KviAliasEditorTreeWidgetItem(){}; protected: Type m_eType; - KviAliasNamespaceListViewItem * m_pParentNamespaceItem; + KviAliasNamespaceTreeWidgetItem * m_pParentNamespaceItem; QString m_szName; public: const QString & name(){ return m_szName; }; @@ -61,35 +60,34 @@ public: Type type(){ return m_eType; }; bool isAlias(){ return m_eType == Alias; }; bool isNamespace(){ return m_eType == Namespace; }; - void setParentNamespaceItem(KviAliasNamespaceListViewItem* it){ m_pParentNamespaceItem=it; }; - KviAliasNamespaceListViewItem * parentNamespaceItem(){ return m_pParentNamespaceItem; }; + void setParentNamespaceItem(KviAliasNamespaceTreeWidgetItem* it){ m_pParentNamespaceItem=it; }; + KviAliasNamespaceTreeWidgetItem * parentNamespaceItem(){ return m_pParentNamespaceItem; }; virtual QString key(int column,bool bAsc) const; }; -class KviAliasListViewItem; -class KviAliasNamespaceListViewItem : public KviAliasEditorListViewItem +class KviAliasNamespaceTreeWidgetItem : public KviAliasEditorTreeWidgetItem { public: - KviAliasNamespaceListViewItem(QTreeWidget * pListView,const QString &szName); - KviAliasNamespaceListViewItem(KviAliasNamespaceListViewItem * pParentNamespace,const QString &szName); - ~KviAliasNamespaceListViewItem(); + KviAliasNamespaceTreeWidgetItem(QTreeWidget * pTreeWidget,const QString &szName); + KviAliasNamespaceTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespace,const QString &szName); + ~KviAliasNamespaceTreeWidgetItem(); public: - KviAliasNamespaceListViewItem * findNamespaceItem(const QString &szName); - KviAliasNamespaceListViewItem * getNamespaceItem(const QString &szName); - KviAliasListViewItem * findAliasItem(const QString &szName); - KviAliasListViewItem * getAliasItem(const QString &szName); - KviAliasListViewItem * createFullAliasItem(const QString &szFullName); - KviAliasNamespaceListViewItem * createFullNamespaceItem(const QString &szFullName); + KviAliasNamespaceTreeWidgetItem * findNamespaceItem(const QString &szName); + KviAliasNamespaceTreeWidgetItem * getNamespaceItem(const QString &szName); + KviAliasTreeWidgetItem * findAliasItem(const QString &szName); + KviAliasTreeWidgetItem * getAliasItem(const QString &szName); + KviAliasTreeWidgetItem * createFullAliasItem(const QString &szFullName); + KviAliasNamespaceTreeWidgetItem * createFullNamespaceItem(const QString &szFullName); }; -class KviAliasEditorListView : public QTreeWidget +class KviAliasEditorTreeWidget : public QTreeWidget { Q_OBJECT public: - KviAliasEditorListView(QWidget*); - ~KviAliasEditorListView(){}; + KviAliasEditorTreeWidget(QWidget*); + ~KviAliasEditorTreeWidget(){}; protected: void mousePressEvent (QMouseEvent *e); signals: @@ -97,12 +95,13 @@ signals: }; -class KviAliasListViewItem : public KviAliasEditorListViewItem + +class KviAliasTreeWidgetItem : public KviAliasEditorTreeWidgetItem { public: - KviAliasListViewItem(KviAliasNamespaceListViewItem * pParentNamespace,const QString &szName); - KviAliasListViewItem(QTreeWidget *pListView,const QString &szName); - ~KviAliasListViewItem(); + KviAliasTreeWidgetItem(KviAliasNamespaceTreeWidgetItem * pParentNamespace,const QString &szName); + KviAliasTreeWidgetItem(QTreeWidget *pTreeWidget,const QString &szName); + ~KviAliasTreeWidgetItem(); public: QString m_szBuffer; int m_cPos; @@ -121,12 +120,12 @@ public: ~KviAliasEditor(); public: KviScriptEditor * m_pEditor; - KviAliasEditorListView * m_pListView; + KviAliasEditorTreeWidget * m_pTreeWidget; QLabel * m_pNameLabel; QPushButton * m_pRenameButton; - KviAliasEditorListViewItem * m_pLastEditedItem; - KviAliasEditorListViewItem * m_pLastClickedItem; - //KviAliasListViewItem * m_pLastEditedItem; + KviAliasEditorTreeWidgetItem * m_pLastEditedItem; + KviAliasEditorTreeWidgetItem * m_pLastClickedItem; + //KviAliasTreeWidgetItem * m_pLastEditedItem; KviTalPopupMenu * m_pContextPopup; QSplitter * m_pSplitter; QString m_szDir; @@ -134,7 +133,7 @@ public: //bool modified(){ return m_bModified; }; void commit(); void exportAliases(bool,bool=false); - void exportSelectionInSinglesFiles(KviPointerList<KviAliasListViewItem> *l); + void exportSelectionInSinglesFiles(KviPointerList<KviAliasTreeWidgetItem> *l); void saveProperties(KviConfig *); void loadProperties(KviConfig *); @@ -155,27 +154,27 @@ protected slots: void slotReplaceAll(const QString &before,const QString &after); void itemRenamed(QTreeWidgetItem *it,int col); protected: -// QString const & findWord(const QString &txt,bool); - void recursiveCollapseNamespaces(KviAliasEditorListViewItem * it); - void recursiveSearchReplace(const QString &szSearch,KviAliasEditorListViewItem * it,bool bReplace=false,const QString &szReplace="n"); + //QString const & findWord(const QString &txt,bool); + void recursiveCollapseNamespaces(KviAliasEditorTreeWidgetItem * it); + void recursiveSearchReplace(const QString &szSearch,KviAliasEditorTreeWidgetItem * it,bool bReplace=false,const QString &szReplace="n"); - void recursiveCommit(KviAliasEditorListViewItem * it); - void getExportAliasBuffer(QString &buffer,KviAliasListViewItem * it); + void recursiveCommit(KviAliasEditorTreeWidgetItem * it); + void getExportAliasBuffer(QString &buffer,KviAliasTreeWidgetItem * it); void oneTimeSetup(); void selectOneItem(QTreeWidgetItem * it,QTreeWidgetItem *pStartFrom); void saveLastEditedItem(); - void getUniqueItemName(KviAliasEditorListViewItem *item,QString &buffer,KviAliasEditorListViewItem::Type eType); - void appendSelectedItems(KviPointerList<KviAliasEditorListViewItem> * l); - void appendSelectedItemsRecursive(KviPointerList<KviAliasEditorListViewItem> * l,QTreeWidgetItem *it); + void getUniqueItemName(KviAliasEditorTreeWidgetItem *item,QString &buffer,KviAliasEditorTreeWidgetItem::Type eType); + void appendSelectedItems(KviPointerList<KviAliasEditorTreeWidgetItem> * l); + void appendSelectedItemsRecursive(KviPointerList<KviAliasEditorTreeWidgetItem> * l,QTreeWidgetItem *it); - void appendAliasItems(KviPointerList<KviAliasListViewItem> * l,bool bSelectedOnly); - void appendAliasItemsRecursive(KviPointerList<KviAliasListViewItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly); - void appendNamespaceItemsRecursive(KviPointerList<KviAliasListViewItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly); - void appendNamespaceItems(KviPointerList<KviAliasListViewItem> * l,bool bSelectedOnly); + void appendAliasItems(KviPointerList<KviAliasTreeWidgetItem> * l,bool bSelectedOnly); + void appendAliasItemsRecursive(KviPointerList<KviAliasTreeWidgetItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly); + void appendNamespaceItemsRecursive(KviPointerList<KviAliasTreeWidgetItem> * l,QTreeWidgetItem * pStartFrom,bool bSelectedOnly); + void appendNamespaceItems(KviPointerList<KviAliasTreeWidgetItem> * l,bool bSelectedOnly); - //void appendNamespaceItems(KviPointerList<KviAliasListViewItem> * l,KviAliasEditorListViewItem * pStartFrom,bool bSelectedOnly); - bool removeItem(KviAliasEditorListViewItem *it,bool * pbYesToAll,bool bDeleteEmptyTree); - void removeItemChildren(KviAliasEditorListViewItem *it); + //void appendNamespaceItems(KviPointerList<KviAliasTreeWidgetItem> * l,KviAliasEditorTreeWidgetItem * pStartFrom,bool bSelectedOnly); + bool removeItem(KviAliasEditorTreeWidgetItem *it,bool * pbYesToAll,bool bDeleteEmptyTree); + void removeItemChildren(KviAliasEditorTreeWidgetItem *it); void openParentItems(QTreeWidgetItem * it); void activateItem(QTreeWidgetItem * it); @@ -187,14 +186,14 @@ protected: bool aliasExists(QString &szFullItemName); bool hasSelectedItems(); bool hasSelectedItemsRecursive(QTreeWidgetItem *); - KviAliasNamespaceListViewItem * findNamespaceItem(const QString &szName); - KviAliasNamespaceListViewItem * getNamespaceItem(const QString &szName); - KviAliasListViewItem * findAliasItem(const QString &szName); - KviAliasListViewItem * findAliasItemRecursive(KviAliasEditorListViewItem *it,const QString &szName); - KviAliasListViewItem * getAliasItem(const QString &szName); - KviAliasListViewItem * createFullAliasItem(const QString &szFullName); - KviAliasNamespaceListViewItem * createFullNamespaceItem(const QString &szFullName); - QString buildFullItemName(KviAliasEditorListViewItem * it); + KviAliasNamespaceTreeWidgetItem * findNamespaceItem(const QString &szName); + KviAliasNamespaceTreeWidgetItem * getNamespaceItem(const QString &szName); + KviAliasTreeWidgetItem * findAliasItem(const QString &szName); + KviAliasTreeWidgetItem * findAliasItemRecursive(KviAliasEditorTreeWidgetItem *it,const QString &szName); + KviAliasTreeWidgetItem * getAliasItem(const QString &szName); + KviAliasTreeWidgetItem * createFullAliasItem(const QString &szFullName); + KviAliasNamespaceTreeWidgetItem * createFullNamespaceItem(const QString &szFullName); + QString buildFullItemName(KviAliasEditorTreeWidgetItem * it); }; diff --git a/src/modules/objects/CMakeLists.txt b/src/modules/objects/CMakeLists.txt index 9c713ba83..80bfdd078 100644 --- a/src/modules/objects/CMakeLists.txt +++ b/src/modules/objects/CMakeLists.txt @@ -16,8 +16,6 @@ SET(kviobjects_MOC_HDRS class_http.h class_lineedit.h class_listbox.h - class_listview.h - class_listviewitem.h class_multilineedit.h class_painter.h class_pixmap.h @@ -31,6 +29,8 @@ SET(kviobjects_MOC_HDRS class_tbrowser.h class_toolbar.h class_toolbutton.h + class_treewidget.h + class_treewidgetitem.h class_widget.h class_window.h class_wizard.h @@ -49,6 +49,7 @@ SET(kviobjects_SRCS class_file.cpp class_ftp.cpp class_groupbox.cpp + class_hbox.cpp class_http.cpp class_label.cpp class_layout.cpp @@ -56,11 +57,11 @@ SET(kviobjects_SRCS class_lineedit.cpp class_list.cpp class_listbox.cpp - class_listview.cpp - class_listviewitem.cpp class_mainwindow.cpp class_menubar.cpp class_multilineedit.cpp + class_painter.cpp + class_pixmap.cpp class_popupmenu.cpp class_process.cpp class_progressbar.cpp @@ -69,19 +70,18 @@ SET(kviobjects_SRCS class_socket.cpp class_spinbox.cpp class_tabwidget.cpp + class_tbrowser.cpp class_toolbar.cpp class_toolbutton.cpp - class_painter.cpp - class_pixmap.cpp - class_tbrowser.cpp + class_treewidget.cpp + class_treewidgetitem.cpp + class_vbox.cpp class_widget.cpp class_window.cpp class_wizard.cpp class_workspace.cpp class_wrapper.cpp class_xmlreader.cpp - class_vbox.cpp - class_hbox.cpp ) # After this call, files will be moc'ed to moc_kvi_*.cpp diff --git a/src/modules/objects/class_listview.cpp b/src/modules/objects/class_treewidget.cpp index 2936b9ac7..91f8ea6f4 100644 --- a/src/modules/objects/class_listview.cpp +++ b/src/modules/objects/class_treewidget.cpp @@ -1,6 +1,6 @@ //============================================================================= // -// File : class_listview.cpp +// File : class_treewidget.cpp // Creation date : Fri Jan 28 14:21:48 CEST 2005 // by Tonino Imbesi(Grifisx) and Alessandro Carbone(Noldor) // @@ -23,7 +23,7 @@ // //============================================================================= -#include "class_listview.h" +#include "class_treewidget.h" #include "kvi_error.h" #include "kvi_debug.h" @@ -239,7 +239,7 @@ KVSO_END_CONSTRUCTOR(KviKvsObject_treewidget) bool KviKvsObject_treewidget::init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams) { - setObject(new KviKvsMdmListView(parentScriptWidget(),getName().toUtf8().data(),this),true); + setObject(new KviKvsTreeWidget(parentScriptWidget(),getName().toUtf8().data(),this),true); // hack for compatibility with "old" addColumn method; ((KviTalTreeWidget*) widget())->setColumnCount(0); @@ -593,7 +593,7 @@ void KviKvsObject_treewidget::fileDropped(QString &szFile,KviTalTreeWidgetItem * callFunction(this,"fileDroppedEvent",0,¶ms); } -KviKvsMdmListView::KviKvsMdmListView(QWidget * par,const char * name,KviKvsObject_treewidget *parent) +KviKvsTreeWidget::KviKvsTreeWidget(QWidget * par,const char * name,KviKvsObject_treewidget *parent) :KviTalTreeWidget(par) { m_pParentScript=parent; @@ -604,11 +604,11 @@ KviKvsMdmListView::KviKvsMdmListView(QWidget * par,const char * name,KviKvsObjec viewport()->setAcceptDrops(true); } -KviKvsMdmListView::~KviKvsMdmListView() +KviKvsTreeWidget::~KviKvsTreeWidget() { } -void KviKvsMdmListView::dragEnterEvent( QDragEnterEvent * e ) +void KviKvsTreeWidget::dragEnterEvent( QDragEnterEvent * e ) { debug("Drag enter event"); if(!e->mimeData()->hasUrls()) @@ -619,7 +619,7 @@ void KviKvsMdmListView::dragEnterEvent( QDragEnterEvent * e ) } } -void KviKvsMdmListView::dropEvent(QDropEvent * e) +void KviKvsTreeWidget::dropEvent(QDropEvent * e) { debug("Drop event"); QList<QUrl> list; diff --git a/src/modules/objects/class_listview.h b/src/modules/objects/class_treewidget.h index 90e6a71d9..8e72486bf 100644 --- a/src/modules/objects/class_listview.h +++ b/src/modules/objects/class_treewidget.h @@ -1,8 +1,8 @@ -#ifndef _CLASS_LISTVIEW_H_ -#define _CLASS_LISTVIEW_H_ +#ifndef _CLASS_TREEWIDGET_H_ +#define _CLASS_TREEWIDGET_H_ //============================================================================= // -// File : class_listview.h +// File : class_treewidget.h // Creation date : Fri Jan 28 14:21:48 CEST 2005 // by Tonino Imbesi(Grifisx) and Alessandro Carbone(Noldor) // @@ -25,12 +25,12 @@ // //============================================================================= -#include "kvi_tal_treewidget.h" #include "class_widget.h" -#include "class_listviewitem.h" - +#include "class_treewidgetitem.h" #include "object_macros.h" +#include "kvi_tal_treewidget.h" + class KviKvsObject_treewidget : public KviKvsObject_widget { Q_OBJECT @@ -69,8 +69,6 @@ protected: bool function_setAcceptDrops(KviKvsObjectFunctionCall *c); bool function_setHeaderLabels(KviKvsObjectFunctionCall *c); bool function_setColumnCount(KviKvsObjectFunctionCall *c); - - protected slots: void slotClicked(KviTalTreeWidgetItem *,int); void customContextMenuRequested(const QPoint &pnt); @@ -83,19 +81,17 @@ protected slots: void slotItemChanged(KviTalTreeWidgetItem *,int); }; -class KviKvsMdmListView : public KviTalTreeWidget +class KviKvsTreeWidget : public KviTalTreeWidget { Q_OBJECT public: - KviKvsMdmListView(QWidget * par,const char * name,KviKvsObject_treewidget *); - - virtual ~KviKvsMdmListView(); + KviKvsTreeWidget(QWidget * par, const char * name, KviKvsObject_treewidget *); + virtual ~KviKvsTreeWidget(); protected: - KviKvsObject_treewidget *m_pParentScript; - void dropEvent(QDropEvent *e); - void dragEnterEvent( QDragEnterEvent *e ); - - - + KviKvsObject_treewidget * m_pParentScript; +protected: + void dropEvent(QDropEvent * e); + void dragEnterEvent(QDragEnterEvent * e); }; -#endif //!_CLASS_LISTVIEW_H_ + +#endif // _CLASS_TREEWIDGET_H_ diff --git a/src/modules/objects/class_listviewitem.cpp b/src/modules/objects/class_treewidgetitem.cpp index 627892f4c..7ff677f2f 100644 --- a/src/modules/objects/class_listviewitem.cpp +++ b/src/modules/objects/class_treewidgetitem.cpp @@ -1,6 +1,6 @@ //============================================================================= // -// File : class_listviewitem.cpp +// File : class_treewidgetitem.cpp // Creation date : Fri Jan 28 14:21:48 CEST 2005 // by Tonino Imbesi(Grifisx) and Alessandro Carbone(Noldor) // @@ -23,8 +23,9 @@ // //============================================================================= -#include "class_listviewitem.h" +#include "class_treewidgetitem.h" #include "class_pixmap.h" + #include "kvi_error.h" #include "kvi_debug.h" #include "kvi_locale.h" @@ -144,20 +145,20 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_treewidgetitem,"listviewitem","object") KVSO_REGISTER_HANDLER(KviKvsObject_treewidgetitem,"firstChild",function_firstChild); KVSO_REGISTER_HANDLER(KviKvsObject_treewidgetitem,"setFlags",function_setFlags); - // KVSO_REGISTER_HANDLER(KviKvsObject_treewidgetitem,"nextSibling",function_nextSibling); + //KVSO_REGISTER_HANDLER(KviKvsObject_treewidgetitem,"nextSibling",function_nextSibling); KVSO_END_REGISTERCLASS(KviKvsObject_treewidgetitem) KVSO_BEGIN_CONSTRUCTOR(KviKvsObject_treewidgetitem,KviKvsObject) - m_pListViewItem = 0; + m_pTreeWidgetItem = 0; KVSO_END_CONSTRUCTOR(KviKvsObject_treewidgetitem) KVSO_BEGIN_DESTRUCTOR(KviKvsObject_treewidgetitem) - if(m_pListViewItem)delete m_pListViewItem; + if(m_pTreeWidgetItem)delete m_pTreeWidgetItem; KVSO_END_CONSTRUCTOR(KviKvsObject_treewidgetitem) @@ -170,10 +171,10 @@ bool KviKvsObject_treewidgetitem::init(KviKvsRunTimeContext * pContext,KviKvsVar } if(parentObject()->inherits("KviKvsObject_treewidgetitem")) { - m_pListViewItem = new KviKvsMdmStandardListViewItem(this,((KviKvsObject_treewidgetitem *)parentObject())->m_pListViewItem); + m_pTreeWidgetItem = new KviKvsStandardTreeWidgetItem(this,((KviKvsObject_treewidgetitem *)parentObject())->m_pTreeWidgetItem); } else { if(parentObject()->inherits("KviKvsObject_treewidget")) - m_pListViewItem = new KviKvsMdmStandardListViewItem(this,((KviTalTreeWidget *)parentScriptWidget())); + m_pTreeWidgetItem = new KviKvsStandardTreeWidgetItem(this,((KviTalTreeWidget *)parentScriptWidget())); else { pContext->error(__tr2qs("The parent of the treewidgetitem must be either another treewidgetitem or a treewidget")); return false; @@ -184,39 +185,38 @@ bool KviKvsObject_treewidgetitem::init(KviKvsRunTimeContext * pContext,KviKvsVar void KviKvsObject_treewidgetitem::childDestroyed() { - if(m_pListViewItem == 0)return; - m_pListViewItem = 0; + if(m_pTreeWidgetItem == 0)return; + m_pTreeWidgetItem = 0; die(); } -KviKvsMdmStandardListViewItem::KviKvsMdmStandardListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par) +KviKvsStandardTreeWidgetItem::KviKvsStandardTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par) :KviTalTreeWidgetItem(par), m_pMasterObject(ob) { } -KviKvsMdmStandardListViewItem::KviKvsMdmStandardListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par) +KviKvsStandardTreeWidgetItem::KviKvsStandardTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par) :KviTalTreeWidgetItem(par), m_pMasterObject(ob) { } -KviKvsMdmStandardListViewItem::~KviKvsMdmStandardListViewItem() +KviKvsStandardTreeWidgetItem::~KviKvsStandardTreeWidgetItem() { if(m_pMasterObject)m_pMasterObject->childDestroyed(); } -/* - -KviKvsMdmCheckListViewItem::KviKvsMdmCheckListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par) +/* +KviKvsCheckTreeWidgetItem::KviKvsCheckTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par) :KviTalCheckListItem(par,QString::null,KviTalCheckListItem::CheckBox), m_pMasterObject(ob) { } -KviKvsMdmCheckListViewItem::KviKvsMdmCheckListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par) +KviKvsCheckTreeWidgetItem::KviKvsCheckTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par) :KviTalCheckListItem(par,QString::null,KviTalCheckListItem::CheckBox), m_pMasterObject(ob) { } -KviKvsMdmCheckListViewItem::~KviKvsMdmCheckListViewItem() +KviKvsCheckTreeWidgetItem::~KviKvsCheckTreeWidgetItem() { if(m_pMasterObject)m_pMasterObject->childDestroyed(); } @@ -226,14 +226,13 @@ kvs_hobject_t KviKvsObject_treewidgetitem::itemToHandle(KviTalTreeWidgetItem * i { if(!it)return (kvs_hobject_t)0; KviKvsObject_treewidgetitem * pObject; -// if(it->rtti() == 1)pObject = ((KviKvsMdmCheckListViewItem *)it)->masterObject(); -// else - pObject = ((KviKvsMdmStandardListViewItem *)it)->masterObject(); + //if(it->rtti() == 1)pObject = ((KviKvsCheckTreeWidgetItem *)it)->masterObject(); + //else + pObject = ((KviKvsStandardTreeWidgetItem *)it)->masterObject(); if(!pObject)return (kvs_hobject_t)0; return pObject->handle(); } - bool KviKvsObject_treewidgetitem::function_setText(KviKvsObjectFunctionCall *c) { kvs_uint_t uCol; @@ -242,15 +241,15 @@ bool KviKvsObject_treewidgetitem::function_setText(KviKvsObjectFunctionCall *c) KVSO_PARAMETER("column",KVS_PT_UNSIGNEDINTEGER,0,uCol) KVSO_PARAMETER("text",KVS_PT_STRING,0,szText) KVSO_PARAMETERS_END(c) - if(m_pListViewItem) - m_pListViewItem->setText(uCol,szText); + if(m_pTreeWidgetItem) + m_pTreeWidgetItem->setText(uCol,szText); return true; } bool KviKvsObject_treewidgetitem::function_firstChild(KviKvsObjectFunctionCall *c) { - if(m_pListViewItem) - c->returnValue()->setHObject(itemToHandle((KviTalTreeWidgetItem*)m_pListViewItem->child(0))); + if(m_pTreeWidgetItem) + c->returnValue()->setHObject(itemToHandle((KviTalTreeWidgetItem*)m_pTreeWidgetItem->child(0))); else c->returnValue()->setHObject((kvs_hobject_t)0); return true; @@ -258,8 +257,8 @@ bool KviKvsObject_treewidgetitem::function_firstChild(KviKvsObjectFunctionCall * /* bool KviKvsObject_treewidgetitem::function_nextSibling(KviKvsObjectFunctionCall *c) { - if(m_pListViewItem) - c->returnValue()->setHObject(itemToHandle(m_pListViewItem->nextSibling())); + if(m_pTreeWidgetItem) + c->returnValue()->setHObject(itemToHandle(m_pTreeWidgetItem->nextSibling())); else c->returnValue()->setHObject((kvs_hobject_t)0); return true; @@ -273,10 +272,9 @@ bool KviKvsObject_treewidgetitem::function_setRenameEnabled(KviKvsObjectFunction KVSO_PARAMETER("column",KVS_PT_UNSIGNEDINTEGER,0,uCol) KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled) KVSO_PARAMETERS_END(c) - if(m_pListViewItem) - m_pListViewItem->setFlags(m_pListViewItem->flags()|Qt::ItemIsEditable); + if(m_pTreeWidgetItem) + m_pTreeWidgetItem->setFlags(m_pTreeWidgetItem->flags()|Qt::ItemIsEditable); return true; - } bool KviKvsObject_treewidgetitem::function_setFlags(KviKvsObjectFunctionCall *c) @@ -287,33 +285,28 @@ bool KviKvsObject_treewidgetitem::function_setFlags(KviKvsObjectFunctionCall *c) KVSO_PARAMETERS_END(c) int flag,sum=0; for ( int i=0;i<itemflags.count();i++) + { + flag = 0; + for(unsigned int j = 0; j < itemflags_num; j++) { - - flag = 0; - for(unsigned int j = 0; j < itemflags_num; j++) + if(KviQString::equalCI(itemflags.at(i), itemflags_tbl[j])) { - if(KviQString::equalCI(itemflags.at(i), itemflags_tbl[j])) - { - flag=item_flags[j]; - break; - } - } - if(flag){ - if (flag==Qt::ItemIsUserCheckable) - m_pListViewItem->setCheckState(0,Qt::Unchecked); - sum = sum | flag; + flag=item_flags[j]; + break; } - else - c->warning(__tr2qs("Unknown item flag: %s"),&itemflags.at(i)); - } - if(m_pListViewItem) - m_pListViewItem->setFlags((Qt::ItemFlags)sum); + if(flag){ + if (flag==Qt::ItemIsUserCheckable) + m_pTreeWidgetItem->setCheckState(0,Qt::Unchecked); + sum = sum | flag; + } + else + c->warning(__tr2qs("Unknown item flag: %s"),&itemflags.at(i)); + } + if(m_pTreeWidgetItem) + m_pTreeWidgetItem->setFlags((Qt::ItemFlags)sum); return true; - - - } /* bool KviKvsObject_treewidgetitem::function_setEnabled(KviKvsObjectFunctionCall *c) @@ -322,19 +315,19 @@ bool KviKvsObject_treewidgetitem::function_setEnabled(KviKvsObjectFunctionCall * KVSO_PARAMETERS_BEGIN(c) KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled) KVSO_PARAMETERS_END(c) - if(m_pListViewItem) - m_pListViewItem->setEnabled(bEnabled); + if(m_pTreeWidgetItem) + m_pTreeWidgetItem->setEnabled(bEnabled); return true; } bool KviKvsObject_treewidgetitem::function_isEnabled(KviKvsObjectFunctionCall *c) { - if(!m_pListViewItem) + if(!m_pTreeWidgetItem) { c->returnValue()->setBoolean(false); return true; } - c->returnValue()->setBoolean(m_pListViewItem->isEnabled()); + c->returnValue()->setBoolean(m_pTreeWidgetItem->isEnabled()); return true; } */ @@ -344,49 +337,48 @@ bool KviKvsObject_treewidgetitem::function_setOpen(KviKvsObjectFunctionCall *c) KVSO_PARAMETERS_BEGIN(c) KVSO_PARAMETER("bEnabled",KVS_PT_BOOL,0,bEnabled) KVSO_PARAMETERS_END(c) - if(m_pListViewItem) - m_pListViewItem->setExpanded(bEnabled); + if(m_pTreeWidgetItem) + m_pTreeWidgetItem->setExpanded(bEnabled); return true; } bool KviKvsObject_treewidgetitem::function_isOpen(KviKvsObjectFunctionCall *c) { - if(!m_pListViewItem) + if(!m_pTreeWidgetItem) { c->returnValue()->setBoolean(false); return true; } - c->returnValue()->setBoolean(m_pListViewItem->isExpanded()); + c->returnValue()->setBoolean(m_pTreeWidgetItem->isExpanded()); return true; } - bool KviKvsObject_treewidgetitem::function_setChecked(KviKvsObjectFunctionCall *c) { bool bChecked; KVSO_PARAMETERS_BEGIN(c) KVSO_PARAMETER("bChecked",KVS_PT_BOOL,0,bChecked) KVSO_PARAMETERS_END(c) - if(!m_pListViewItem)return true; -// if(m_pListViewItem->rtti() != 1)return true; // not a QCheckListItem - ((KviTalTreeWidgetItem *)m_pListViewItem)->setCheckState(0,bChecked?Qt::Checked:Qt::Unchecked); + if(!m_pTreeWidgetItem)return true; + //if(m_pTreeWidgetItem->rtti() != 1)return true; // not a QCheckListItem + ((KviTalTreeWidgetItem *)m_pTreeWidgetItem)->setCheckState(0,bChecked?Qt::Checked:Qt::Unchecked); return true; } bool KviKvsObject_treewidgetitem::function_isChecked(KviKvsObjectFunctionCall *c) { - if(!m_pListViewItem) + if(!m_pTreeWidgetItem) { c->returnValue()->setBoolean(false); return true; } - /*if(m_pListViewItem->rtti() != 1) + /*if(m_pTreeWidgetItem->rtti() != 1) { c->returnValue()->setBoolean(false); return true; } */ - c->returnValue()->setBoolean(((KviTalTreeWidgetItem *)m_pListViewItem)->checkState(0)==Qt::Checked?1:0); + c->returnValue()->setBoolean(((KviTalTreeWidgetItem *)m_pTreeWidgetItem)->checkState(0)==Qt::Checked?1:0); return true; } /* @@ -396,44 +388,44 @@ bool KviKvsObject_treewidgetitem::function_setCheckable(KviKvsObjectFunctionCall KVSO_PARAMETERS_BEGIN(c) KVSO_PARAMETER("bCheckable",KVS_PT_BOOL,0,bCheckable) KVSO_PARAMETERS_END(c) - if(!m_pListViewItem)return true; + if(!m_pTreeWidgetItem)return true; if(bCheckable) { - if(m_pListViewItem->rtti() == 1)return true; // a QCheckListItem already - KviTalTreeWidgetItem * pParent = m_pListViewItem->parent(); - KviTalTreeWidget * pLV = (KviTalTreeWidget *)m_pListViewItem->listView(); + if(m_pTreeWidgetItem->rtti() == 1)return true; // a QCheckListItem already + KviTalTreeWidgetItem * pParent = m_pTreeWidgetItem->parent(); + KviTalTreeWidget * pLV = (KviTalTreeWidget *)m_pTreeWidgetItem->listView(); // swap the items, so we don't die now - KviTalTreeWidgetItem * pThis = m_pListViewItem; - m_pListViewItem = 0; + KviTalTreeWidgetItem * pThis = m_pTreeWidgetItem; + m_pTreeWidgetItem = 0; delete pThis; if(pParent) - m_pListViewItem = new KviKvsMdmCheckListViewItem(this,pParent); + m_pTreeWidgetItem = new KviKvsCheckTreeWidgetItem(this,pParent); else - m_pListViewItem = new KviKvsMdmCheckListViewItem(this,pLV); + m_pTreeWidgetItem = new KviKvsCheckTreeWidgetItem(this,pLV); } else { - if(m_pListViewItem->rtti() != 1)return true; // not a QCheckListItem yet - KviTalTreeWidgetItem * pParent = m_pListViewItem->parent(); - KviTalTreeWidget * pLV = (KviTalTreeWidget *)m_pListViewItem->listView(); + if(m_pTreeWidgetItem->rtti() != 1)return true; // not a QCheckListItem yet + KviTalTreeWidgetItem * pParent = m_pTreeWidgetItem->parent(); + KviTalTreeWidget * pLV = (KviTalTreeWidget *)m_pTreeWidgetItem->listView(); // swap the items, so we don't die now - KviTalTreeWidgetItem * pThis = m_pListViewItem; - m_pListViewItem = 0; + KviTalTreeWidgetItem * pThis = m_pTreeWidgetItem; + m_pTreeWidgetItem = 0; delete pThis; if(pParent) - m_pListViewItem = new KviKvsMdmStandardListViewItem(this,pParent); + m_pTreeWidgetItem = new KviKvsStandardTreeWidgetItem(this,pParent); else - m_pListViewItem = new KviKvsMdmStandardListViewItem(this,pLV); + m_pTreeWidgetItem = new KviKvsStandardTreeWidgetItem(this,pLV); } return true; } bool KviKvsObject_treewidgetitem::function_isCheckable(KviKvsObjectFunctionCall *c) { - if(!m_pListViewItem) + if(!m_pTreeWidgetItem) { c->returnValue()->setBoolean(false); return true; } - c->returnValue()->setBoolean(m_pListViewItem->rtti() == 1); + c->returnValue()->setBoolean(m_pTreeWidgetItem->rtti() == 1); return true; } */ @@ -443,8 +435,8 @@ bool KviKvsObject_treewidgetitem::function_text(KviKvsObjectFunctionCall *c) KVSO_PARAMETERS_BEGIN(c) KVSO_PARAMETER("column",KVS_PT_UNSIGNEDINTEGER,0,uCol) KVSO_PARAMETERS_END(c) - if(m_pListViewItem) - c->returnValue()->setString(m_pListViewItem->text(uCol)); + if(m_pTreeWidgetItem) + c->returnValue()->setString(m_pTreeWidgetItem->text(uCol)); return true; } @@ -473,17 +465,16 @@ bool KviKvsObject_treewidgetitem::function_setPixmap(KviKvsObjectFunctionCall *c QString szPix; vPixmap->asString(szPix); pix=g_pIconManager->getImage(szPix); - if(!pix) + if(!pix) { c->warning(__tr2qs("Error occured: the suitable file '%Q' is not of the correct format or it is not a valid icon number."),&szPix); return true; } } - m_pListViewItem->setIcon(uCol,QIcon(*pix)); + m_pTreeWidgetItem->setIcon(uCol,QIcon(*pix)); return true; } #ifndef COMPILE_USE_STANDALONE_MOC_SOURCES #include "m_class_listviewitem.moc" #endif //!COMPILE_USE_STANDALONE_MOC_SOURCES - diff --git a/src/modules/objects/class_listviewitem.h b/src/modules/objects/class_treewidgetitem.h index e7e14fb13..2fa65975c 100644 --- a/src/modules/objects/class_listviewitem.h +++ b/src/modules/objects/class_treewidgetitem.h @@ -1,8 +1,8 @@ -#ifndef _CLASS_LISTVIEWITEM_H_ -#define _CLASS_LISTVIEWITEM_H_ +#ifndef _CLASS_TREEWIDGETITEM_H_ +#define _CLASS_TREEWIDGETITEM_H_ //============================================================================= // -// File : class_listviewitem.h +// File : class_treewidgetitem.h // Creation date : Fri Jan 28 14:21:48 CEST 2005 // by Tonino Imbesi(Grifisx) and Alessandro Carbone(Noldor) // @@ -25,13 +25,12 @@ // //============================================================================= -#include "kvi_tal_treewidget.h" -#include "class_widget.h" - - +#include "class_widget.h" #include "object_macros.h" +#include "kvi_tal_treewidget.h" + class KviKvsObject_treewidgetitem : public KviKvsObject { Q_OBJECT @@ -39,7 +38,7 @@ public: KVSO_DECLARE_OBJECT(KviKvsObject_treewidgetitem) void childDestroyed(); protected: - KviTalTreeWidgetItem * m_pListViewItem; + KviTalTreeWidgetItem * m_pTreeWidgetItem; protected: virtual bool init(KviKvsRunTimeContext * pContext,KviKvsVariantList *pParams); protected: @@ -65,29 +64,29 @@ public: }; - -class KviKvsMdmStandardListViewItem : public KviTalTreeWidgetItem +class KviKvsStandardTreeWidgetItem : public KviTalTreeWidgetItem { public: - KviKvsMdmStandardListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par); - KviKvsMdmStandardListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par); - virtual ~KviKvsMdmStandardListViewItem(); + KviKvsStandardTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par); + KviKvsStandardTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par); + virtual ~KviKvsStandardTreeWidgetItem(); protected: KviKvsObject_treewidgetitem * m_pMasterObject; public: KviKvsObject_treewidgetitem * masterObject(){ return m_pMasterObject; } }; + /* -class KviKvsMdmCheckListViewItem : public KviTalCheckListItem +class KviKvsCheckTreeWidgetItem : public KviTalCheckListItem { public: - KviKvsMdmCheckListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par); - KviKvsMdmCheckListViewItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par); - virtual ~KviKvsMdmCheckListViewItem(); + KviKvsCheckTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidget * par); + KviKvsCheckTreeWidgetItem(KviKvsObject_treewidgetitem * ob,KviTalTreeWidgetItem * par); + virtual ~KviKvsCheckTreeWidgetItem(); protected: KviKvsObject_treewidgetitem * m_pMasterObject; public: KviKvsObject_treewidgetitem * masterObject(){ return m_pMasterObject; } }; */ -#endif // !_CLASS_LISTVIEWITEM_H_ +#endif // _CLASS_TREEWIDGETITEM_H_ diff --git a/src/modules/objects/libkviobjects.cpp b/src/modules/objects/libkviobjects.cpp index 275f1a06a..af33d636b 100644 --- a/src/modules/objects/libkviobjects.cpp +++ b/src/modules/objects/libkviobjects.cpp @@ -33,13 +33,12 @@ #include "class_buttongroup.h" #include "class_hbox.h" #include "class_http.h" +#include "class_label.h" #include "class_layout.h" #include "class_lcd.h" #include "class_lineedit.h" #include "class_list.h" #include "class_listbox.h" -#include "class_listview.h" -#include "class_listviewitem.h" #include "class_mainwindow.h" #include "class_menubar.h" #include "class_multilineedit.h" @@ -56,7 +55,8 @@ #include "class_tbrowser.h" #include "class_toolbar.h" #include "class_toolbutton.h" -#include "class_label.h" +#include "class_treewidget.h" +#include "class_treewidgetitem.h" #include "class_vbox.h" #include "class_widget.h" #include "class_window.h" @@ -77,7 +77,6 @@ #include "kvi_out.h" #include "kvi_app.h" #include "kvi_fileutils.h" -#include "kvi_tal_listview.h" #include <QDir> #include <QImage> |
