diff options
| author | 2008-05-13 15:28:49 +0000 | |
|---|---|---|
| committer | 2008-05-13 15:28:49 +0000 | |
| commit | bc07070cb9f301d824e73a553289a1824b6c775a (patch) | |
| tree | 73534846921a7746a04f0dca93edeeec417997a4 /src/modules/objects | |
| parent | added uk locale (ukraine, not united kingdom!) to info.plist (diff) | |
| download | KVIrc-bc07070cb9f301d824e73a553289a1824b6c775a.tar.gz KVIrc-bc07070cb9f301d824e73a553289a1824b6c775a.tar.bz2 KVIrc-bc07070cb9f301d824e73a553289a1824b6c775a.zip | |
Huge QT4 port commit :) (wip)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1765 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/objects')
| -rw-r--r-- | src/modules/objects/class_listview.cpp | 42 | ||||
| -rw-r--r-- | src/modules/objects/class_listview.h | 4 | ||||
| -rw-r--r-- | src/modules/objects/class_widget.cpp | 12 | ||||
| -rw-r--r-- | src/modules/objects/class_widget.h | 1 |
4 files changed, 42 insertions, 17 deletions
diff --git a/src/modules/objects/class_listview.cpp b/src/modules/objects/class_listview.cpp index 2ccb4302a..82de3cd16 100644 --- a/src/modules/objects/class_listview.cpp +++ b/src/modules/objects/class_listview.cpp @@ -38,6 +38,11 @@ #include <QDragEnterEvent> #include <QDropEvent> #include <QUrl> +#include <QTreeWidget> + +#define KviTalListView QTreeWidget + + /* @doc: listview @@ -180,7 +185,7 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_listview,"listview","widget") KVSO_REGISTER_HANDLER(KviKvsObject_listview,"setRootIsDecorated",function_setRootIsDecorated) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"setAllColumnsShowFocus",function_setAllColumnsShowFocus) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"clear",function_clear) - KVSO_REGISTER_HANDLER(KviKvsObject_listview,"selectedItem",function_selectedItem) + KVSO_REGISTER_HANDLER(KviKvsObject_listview,"selectedItems",function_selectedItems) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"currentItem",function_currentItem) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"setSelectionMode",function_setSelectionMode) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"listViewHeaderIsVisible",function_listViewHeaderIsVisible) @@ -188,7 +193,7 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_listview,"listview","widget") KVSO_REGISTER_HANDLER(KviKvsObject_listview,"hideListViewHeader",function_hideListViewHeader) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"showListViewHeader",function_showListViewHeader) - KVSO_REGISTER_HANDLER(KviKvsObject_listview,"firstChild",function_firstChild) +// KVSO_REGISTER_HANDLER(KviKvsObject_listview,"firstChild",function_firstChild) KVSO_REGISTER_HANDLER(KviKvsObject_listview,"selectionChangedEvent",function_selectionChangedEvent); KVSO_REGISTER_HANDLER(KviKvsObject_listview,"currentChangedEvent",function_currentChangedEvent); KVSO_REGISTER_HANDLER(KviKvsObject_listview,"returnPressedEvent",function_returnPressedEvent); @@ -238,8 +243,12 @@ bool KviKvsObject_listview::function_addColumn(KviKvsObjectFunctionCall *c) KVSO_PARAMETER("label",KVS_PT_STRING,0,szLabel) KVSO_PARAMETER("width",KVS_PT_INT,0,iW) KVSO_PARAMETERS_END(c) - if (widget()) - ((KviTalListView *)object())->addColumn(szLabel,iW); + int col=((KviTalListView *)widget())->columnCount(); + col++; + ((KviTalListView *)widget())->setColumnCount(col); + QTreeWidgetItem *item = ((KviTalListView *)widget())->headerItem(); + item->setText(col-1,szLabel); + if (iW>0) ((KviTalListView *)widget())->setColumnWidth(col-1,iW); return true; } /* @@ -261,15 +270,19 @@ bool KviKvsObject_listview::function_clear(KviKvsObjectFunctionCall *c) return true; } -bool KviKvsObject_listview::function_selectedItem(KviKvsObjectFunctionCall *c) +bool KviKvsObject_listview::function_selectedItems(KviKvsObjectFunctionCall *c) { - if(widget()) - c->returnValue()->setHObject(KviKvsObject_listviewitem::itemToHandle(((KviTalListView *)widget())->selectedItem())); - else - c->returnValue()->setHObject((kvs_hobject_t)0); + KviKvsArray * a = new KviKvsArray();
+ QList<QTreeWidgetItem *> selectedItems=((KviTalListView *)widget())->selectedItems();
+ if (!selectedItems.count()) return true;
+ for (int i=0;i<selectedItems.count();i++)
+ {
+ a->set(i,new KviKvsVariant(KviKvsObject_listviewitem::itemToHandle((KviTalListViewItem *)selectedItems.at(i))));
+ }
+ c->returnValue()->setArray(a); return true; } - +/* bool KviKvsObject_listview::function_firstChild(KviKvsObjectFunctionCall *c) { if(widget()) @@ -278,11 +291,12 @@ bool KviKvsObject_listview::function_firstChild(KviKvsObjectFunctionCall *c) c->returnValue()->setHObject((kvs_hobject_t)0); return true; } - +*/ bool KviKvsObject_listview::function_currentItem(KviKvsObjectFunctionCall *c) { - if(widget()) - c->returnValue()->setHObject(KviKvsObject_listviewitem::itemToHandle(((KviTalListView *)widget())->currentItem())); + if(widget()){ + KviTalListViewItem * + c->returnValue()->setHObject(KviKvsObject_listviewitem::itemToHandle((KviTalListViewItem *)((KviTalListView *)widget())->currentItem())); else c->returnValue()->setHObject((kvs_hobject_t)0); return true; @@ -312,7 +326,7 @@ bool KviKvsObject_listview::function_setSelectionMode(KviKvsObjectFunctionCall * else if(KviQString::equalCI(szMode,"Multi")) ((KviTalListView *)widget())->setSelectionMode(KviTalListView::Multi); else if(KviQString::equalCI(szMode,"Extended")) - ((KviTalListView *)widget())->setSelectionMode(KviTalListView::Extended); + ((KviTalListView *)widget())->setSelectionMode(QAbstractItemView::ExtendedSelection); else if(KviQString::equalCI(szMode,"Single")) ((KviTalListView *)widget())->setSelectionMode(KviTalListView::Single); else c->warning(__tr2qs("Invalid selection mode '%Q'"),&szMode); diff --git a/src/modules/objects/class_listview.h b/src/modules/objects/class_listview.h index bfccbdd78..1aba7555d 100644 --- a/src/modules/objects/class_listview.h +++ b/src/modules/objects/class_listview.h @@ -62,10 +62,10 @@ protected: bool function_itemCollapsedEvent(KviKvsObjectFunctionCall *c); bool function_itemRenamedEvent(KviKvsObjectFunctionCall *c); bool function_rightButtonClickedEvent(KviKvsObjectFunctionCall *c); - bool function_selectedItem(KviKvsObjectFunctionCall *c); + bool function_selectedItems(KviKvsObjectFunctionCall *c); bool function_currentItem(KviKvsObjectFunctionCall *c); bool function_setSelectionMode(KviKvsObjectFunctionCall *c); - bool function_firstChild(KviKvsObjectFunctionCall *c); + //bool function_firstChild(KviKvsObjectFunctionCall *c); bool function_listViewHeaderIsVisible(KviKvsObjectFunctionCall *c); bool function_showListViewHeader(KviKvsObjectFunctionCall *c); bool function_hideListViewHeader(KviKvsObjectFunctionCall *c); diff --git a/src/modules/objects/class_widget.cpp b/src/modules/objects/class_widget.cpp index 5314a6863..51fbd5963 100644 --- a/src/modules/objects/class_widget.cpp +++ b/src/modules/objects/class_widget.cpp @@ -517,6 +517,9 @@ const Qt::WindowType widgettypes_cod[] = { !fn: $insertIntoStatusBar(<index:unsigned integer>)
Insert the widget into the statusbar at the given index.
If index is out of range, the widget is appended.
+ See also [classfnc]$removeFromStatusBar[/classfnc]().
+ !fn: $removeFromStatusBar()
+ Remove the widget from statusbar.
@examples:
[example]
%Widget = $new(widget)
@@ -682,7 +685,7 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_widget,"widget","object") // statusbar
KVSO_REGISTER_HANDLER(KviKvsObject_widget,"insertIntoStatusBar",function_insertIntoStatusBar)
-
+ KVSO_REGISTER_HANDLER(KviKvsObject_widget,"removeFromStatusBar",function_removeFromStatusBar)
// events
KVSO_REGISTER_STANDARD_NOTHINGRETURN_HANDLER(KviKvsObject_widget,"mousePressEvent")
KVSO_REGISTER_STANDARD_NOTHINGRETURN_HANDLER(KviKvsObject_widget,"mouseReleaseEvent")
@@ -1945,6 +1948,13 @@ bool KviKvsObject_widget::function_insertIntoStatusBar(KviKvsObjectFunctionCall return true;
}
+bool KviKvsObject_widget::function_removeFromStatusBar(KviKvsObjectFunctionCall *c)
+{
+
+ if (widget()) g_pFrame->statusBar()->removeWidget(widget());
+ return true;
+}
+
#ifndef COMPILE_USE_STANDALONE_MOC_SOURCES
#include "m_class_widget.moc"
#endif //!COMPILE_USE_STANDALONE_MOC_SOURCES
diff --git a/src/modules/objects/class_widget.h b/src/modules/objects/class_widget.h index 518b72beb..35521612f 100644 --- a/src/modules/objects/class_widget.h +++ b/src/modules/objects/class_widget.h @@ -76,6 +76,7 @@ protected: bool function_raise(KviKvsObjectFunctionCall *);
bool function_repaint(KviKvsObjectFunctionCall *c);
bool function_insertIntoStatusBar(KviKvsObjectFunctionCall *c);
+ bool function_removeFromStatusBar(KviKvsObjectFunctionCall *c);
bool function_reparent(KviKvsObjectFunctionCall *c);
bool function_resize(KviKvsObjectFunctionCall *c);
bool function_screenResolution(KviKvsObjectFunctionCall * c);
|
