author | ar <ar> | 2004-02-08 19:14:56 (UTC) |
---|---|---|
committer | ar <ar> | 2004-02-08 19:14:56 (UTC) |
commit | 5f698069bca9dde2c8be9ff1bf863ee3a7a33cf0 (patch) (side-by-side diff) | |
tree | 525f35c4937c9f4ae99538289c5d1f96c53d7fa7 /noncore/apps/tableviewer | |
parent | 2dc8add65c44b3dd240cf2bd3c276c3c0155f46b (diff) | |
download | opie-5f698069bca9dde2c8be9ff1bf863ee3a7a33cf0.zip opie-5f698069bca9dde2c8be9ff1bf863ee3a7a33cf0.tar.gz opie-5f698069bca9dde2c8be9ff1bf863ee3a7a33cf0.tar.bz2 |
improve support for BigScreen
-rw-r--r-- | noncore/apps/tableviewer/ui/tveditview.cpp | 8 | ||||
-rw-r--r-- | noncore/apps/tableviewer/ui/tvfilterview.cpp | 8 | ||||
-rw-r--r-- | noncore/apps/tableviewer/ui/tvkeyedit.cpp | 8 |
3 files changed, 15 insertions, 9 deletions
diff --git a/noncore/apps/tableviewer/ui/tveditview.cpp b/noncore/apps/tableviewer/ui/tveditview.cpp index 23e2b42..20a24c8 100644 --- a/noncore/apps/tableviewer/ui/tveditview.cpp +++ b/noncore/apps/tableviewer/ui/tveditview.cpp @@ -1,115 +1,117 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ /* The edit view widget. For each key in the DB display an * appropriate edit box, and a 'key' button to change that particular * key information (delete or edit). * * Bottem line should be a 'new key' button. Should be able to scroll * in both directions. */ #include "tveditview.h" #include "commonwidgets.h" #include <qlayout.h> #include <qgrid.h> #include <qvbox.h> #include <qlineedit.h> #include <qcheckbox.h> #include <qlist.h> #include <qlabel.h> #include <qscrollview.h> #include <qsignalmapper.h> -TVEditView::TVEditView(TableState *s, DataElem *d, QWidget* parent, +#include <qpe/qpeapplication.h> + +TVEditView::TVEditView(TableState *s, DataElem *d, QWidget* parent, const char *name, WFlags fl ) : QDialog(parent, name, true, fl) { if (!name) setName("TVEditView"); QVBoxLayout *layout = new QVBoxLayout(this, 0); /* only so that will resize - correctly in other + correctly in other widgets */ toggles = new QSignalMapper(this); QScrollView *sv = new QScrollView(this, 0); sv->setResizePolicy(QScrollView::AutoOneFit); layout->addWidget(sv); editDisplay = new QGrid(3, sv, 0); editDisplay->setSpacing(3); sv->addChild(editDisplay); connect(toggles, SIGNAL(mapped(int)), this, SLOT(toggleEnabled(int))); setData(s, d); #ifdef Q_WS_QWS - showMaximized(); + QPEApplication::showDialog( this ); #endif } TVEditView::~TVEditView() { } /*! set up the widgets in the grid, Set up initial values */ void TVEditView::setData(TableState *t, DataElem *d) { /* TODO need to somehow clear old children... a delete of each * child? */ keyIds.clear(); KeyListIterator it(*t->kRep); int i = 0; while(it.current()) { if (t->kRep->validIndex(it.currentKey())) { new QLabel(it.current()->name(), editDisplay); keyIds.insert(i, it.currentKey()); if (d->hasValidValue(it.currentKey())) { switch(it.current()->type()) { case TVVariant::String: { QLineEdit *edit = new QLineEdit(editDisplay, 0); edit->setText(d->getField(it.currentKey()).toString()); edits.append(edit); break; } case TVVariant::Int: { IntEdit *edit = new IntEdit(editDisplay, 0); edit->setValue(d->getField(it.currentKey()).toInt()); edits.append(edit); break; } case TVVariant::Time: { TimeEdit *edit = new TimeEdit(editDisplay, 0); edit->setTime(d->getField(it.currentKey()).toTime()); edits.append(edit); break; } case TVVariant::Date: { DateEdit *edit = new DateEdit(editDisplay, 0); edit->setDate(d->getField(it.currentKey()).toDate()); edits.append(edit); break; } diff --git a/noncore/apps/tableviewer/ui/tvfilterview.cpp b/noncore/apps/tableviewer/ui/tvfilterview.cpp index 0182127..b03e846 100644 --- a/noncore/apps/tableviewer/ui/tvfilterview.cpp +++ b/noncore/apps/tableviewer/ui/tvfilterview.cpp @@ -1,146 +1,148 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** -**********************************************************************/ +**********************************************************************/ #include "tvfilterview.h" #include <qtoolbutton.h> #include <qcombobox.h> #include <qlistview.h> #include <qlayout.h> #include <qheader.h> #include <qpushbutton.h> #include <qlabel.h> -TVFilterView::TVFilterView(TableState *t, QWidget* parent, +#include <qpe/qpeapplication.h> + +TVFilterView::TVFilterView(TableState *t, QWidget* parent, const char *name, WFlags fl ) : QDialog(parent, name, TRUE, fl) { if ( !name ) setName( "Filter View" ); QVBoxLayout *vlayout = new QVBoxLayout(this); display = new QListView(this, "display"); display->addColumn("Key"); display->addColumn("Constraint"); display->addColumn("Value"); display->header()->setClickEnabled(FALSE); display->header()->setResizeEnabled(FALSE); vlayout->addWidget(display); QHBoxLayout *hlayout = new QHBoxLayout; hlayout->addItem(new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum)); newFilterButton = new QPushButton(this, "new Filter"); newFilterButton->setMaximumSize(QSize(50, 32767)); newFilterButton->setText("New"); hlayout->addWidget(newFilterButton); deleteFilterButton = new QPushButton(this, "delete Filter"); deleteFilterButton->setMaximumSize(QSize(50, 32767)); deleteFilterButton->setText("Delete"); hlayout->addWidget(deleteFilterButton); clearFilterButton = new QPushButton(this, "delete Filter"); clearFilterButton->setMaximumSize(QSize(60, 32767)); clearFilterButton->setText("Clear All"); hlayout->addWidget(clearFilterButton); vlayout->addLayout(hlayout); QHBoxLayout *hlayout2 = new QHBoxLayout; keyNameCombo = new QComboBox(FALSE, this, "key name"); keyNameCombo->setEnabled(FALSE); hlayout2->addWidget(keyNameCombo); QLabel *label = new QLabel(this); label->setText("has value"); hlayout2->addWidget(label); keyEntry = new TVFilterKeyEntry(this, "key entry"); keyEntry->setEnabled(FALSE); vlayout->addLayout(hlayout2); vlayout->addWidget(keyEntry); connect(newFilterButton, SIGNAL( clicked() ), this, SLOT( newTerm() )); connect(deleteFilterButton, SIGNAL( clicked() ), this, SLOT( deleteTerm())); connect(clearFilterButton, SIGNAL( clicked() ), this, SLOT( clearTerms())); connect(keyEntry, SIGNAL(valueChanged()), this, SLOT( updateTerm() )); connect(keyNameCombo, SIGNAL(activated(int)), this, SLOT( updateTerm() )); connect(display, SIGNAL(selectionChanged(QListViewItem*)), this, SLOT(setTerm(QListViewItem *))); ts = t; current = 0; terms.setAutoDelete(true); do_filter = false; #ifdef Q_WS_QWS - showMaximized(); + QPEApplication::showDialog( this ); #endif } /*! Destroys the TVFilterView widget */ TVFilterView::~TVFilterView() { } void TVFilterView::rebuildData() { } void TVFilterView::reset() { keyNameCombo->clear(); keyIds.clear(); } void TVFilterView::rebuildKeys() { int i; if (!ts) return; if(!ts->kRep) return; keyEntry->setTableState(ts); /* set up the list of keys that can be compared on */ keyNameCombo->clear(); KeyListIterator it(*ts->kRep); i = 0; while(it.current()) { if(ts->kRep->validIndex(it.currentKey())) { keyNameCombo->insertItem(it.current()->name()); keyIds.insert(i, it.currentKey()); ++i; } ++it; } } bool TVFilterView::passesFilter(DataElem *d) { if (!filterActive()) return true; FilterTerm *t; diff --git a/noncore/apps/tableviewer/ui/tvkeyedit.cpp b/noncore/apps/tableviewer/ui/tvkeyedit.cpp index 4849e87..c22ecd3 100644 --- a/noncore/apps/tableviewer/ui/tvkeyedit.cpp +++ b/noncore/apps/tableviewer/ui/tvkeyedit.cpp @@ -1,76 +1,78 @@ /********************************************************************** ** Copyright (C) 2000 Trolltech AS. All rights reserved. ** ** This file is part of Qtopia Environment. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ** See http://www.trolltech.com/gpl/ for GPL licensing information. ** ** Contact info@trolltech.com if any conditions of this licensing are ** not clear to you. ** **********************************************************************/ #include "tvkeyedit.h" #include <qtoolbutton.h> #include <qlineedit.h> #include <qcombobox.h> #include <qlistview.h> #include <qmessagebox.h> #include <stdlib.h> #include <qpushbutton.h> +#include <qpe/qpeapplication.h> + /* QList view item... ?? that can store and update the values that I will * be changing */ class TVKEListViewItem : public QListViewItem { public: TVKEListViewItem(QString n, TVVariant::KeyType kt, int p, QListView *parent) : QListViewItem(parent) { name = n; keyType = kt; position = p; } QString text(int i) const { if(i) { return TVVariant::typeToName(keyType); } return name; } /* always sort by key index, ignore i */ QString key(int, bool) const { return QString().sprintf("%08d", position); } void setText(int i, const QString &) { ; } QString getName() const { return name; } void setName(QString n) { name = n; repaint(); } TVVariant::KeyType getKeyType() const { return keyType; } @@ -90,109 +92,109 @@ private: QString name; TVVariant::KeyType keyType; int position; }; TVKeyEdit::TVKeyEdit(TableState *t, QWidget* parent, const char *name, WFlags fl) : TVKeyEdit_gen(parent, name, true, fl) { int i; ts = t; if(!ts) return; if(!ts->kRep) return; working_state = *ts->kRep; i = 1; keyTypeEdit->insertItem(TVVariant::typeToName((TVVariant::KeyType)i)); i++; keyTypeEdit->insertItem(TVVariant::typeToName((TVVariant::KeyType)i)); i++; keyTypeEdit->insertItem(TVVariant::typeToName((TVVariant::KeyType)i)); i++; keyTypeEdit->insertItem(TVVariant::typeToName((TVVariant::KeyType)i)); KeyListIterator it(*ts->kRep); while(it.current()) { if(t->kRep->validIndex(it.currentKey())) { new TVKEListViewItem(it.current()->name(), it.current()->type(), it.currentKey(), display); } ++it; } num_keys = ts->kRep->getNumFields(); if(display->childCount() > 0) { display->setCurrentItem(display->firstChild()); setTerm(display->currentItem()); } else { deleteKeyButton->setEnabled(FALSE); clearKeysButton->setEnabled(FALSE); keyNameEdit->setEnabled(FALSE); keyTypeEdit->setEnabled(FALSE); } display->setSorting(0); #ifdef Q_WS_QWS - showMaximized(); + QPEApplication::showDialog( this ); #endif } /*! - Destroys the TVKeyEdit widget + Destroys the TVKeyEdit widget */ TVKeyEdit::~TVKeyEdit() { } /* SLOTS */ -void TVKeyEdit::newTerm() +void TVKeyEdit::newTerm() { /* new item, make current Item */ int i; i = working_state.addKey("<New Key>", TVVariant::String); //working_state.setNewFlag(i, TRUE); TVKEListViewItem *nItem = new TVKEListViewItem("<New Key>", TVVariant::String, i, display); display->setCurrentItem(nItem); setTerm(nItem); num_keys++; if(display->childCount() == 1) { deleteKeyButton->setEnabled(TRUE); clearKeysButton->setEnabled(TRUE); keyNameEdit->setEnabled(TRUE); keyTypeEdit->setEnabled(TRUE); } } void TVKeyEdit::updateTerm(const QString &newName) { /* TODO if name matches a deleted term, prompt for renewing old data instead */ TVKEListViewItem *i = (TVKEListViewItem *)display->currentItem(); if(i) { i->setName(newName); working_state.setKeyName(i->getPos(), newName); } } void TVKeyEdit::updateTerm(int t) { /* t is an index to a combo in a menu, NOT a type */ t++; /* menu counts from 0, types count from 1 */ TVKEListViewItem *i = (TVKEListViewItem *)display->currentItem(); if (i) { i->setKeyType((TVVariant::KeyType)t); working_state.setKeyType(i->getPos(), (TVVariant::KeyType)t); } } /* deletes current term * really just marks key as deleted so is now invalid. * the actual delete will happen when data is 'cleaned' * or when file is saved. |