summaryrefslogtreecommitdiff
authoralwin <alwin>2004-02-22 01:07:49 (UTC)
committer alwin <alwin>2004-02-22 01:07:49 (UTC)
commit3d3972ee1de2fe930dd32bcfe13a3a4f486f6ac5 (patch) (side-by-side diff)
tree90f90bc883434cbd08ffc6c1777681609063398c
parenta1b94ec1962ddb3fb699c81bf88da58b53c94375 (diff)
downloadopie-3d3972ee1de2fe930dd32bcfe13a3a4f486f6ac5.zip
opie-3d3972ee1de2fe930dd32bcfe13a3a4f486f6ac5.tar.gz
opie-3d3972ee1de2fe930dd32bcfe13a3a4f486f6ac5.tar.bz2
now we can edit subdirs in .opiestorage.cf as used in launcher
or Global for searching for documents. ToDo: Where to (re-)implement the stuff where the dialogs apears if a media is inserted first time???? eg, no .opiestorage.cf exists on this media? I didn't found any usefull :(
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/mediummount/mediumwidget.cc49
-rw-r--r--noncore/settings/mediummount/mediumwidget.h5
2 files changed, 49 insertions, 5 deletions
diff --git a/noncore/settings/mediummount/mediumwidget.cc b/noncore/settings/mediummount/mediumwidget.cc
index 981e1dd..caa9559 100644
--- a/noncore/settings/mediummount/mediumwidget.cc
+++ b/noncore/settings/mediummount/mediumwidget.cc
@@ -10,8 +10,9 @@
#include <qpixmap.h>
#include <qpushbutton.h>
#include <qvbox.h>
#include <qwhatsthis.h>
+#include <qcombobox.h>
#include <qpe/config.h>
#include <qpe/qpeapplication.h>
@@ -106,17 +107,27 @@ void MediumMountWidget::initGUI()
// label
m_lblPath = new QLabel(tr("Limit search to:"), this );
m_box->addWidget( m_lblPath );
- // add to
+
+ m_subList = new QComboBox(FALSE,this,"docFolderList");
+ m_subList->setDuplicatesEnabled(FALSE);
+ m_subList->setEditable(TRUE);
+ m_box->addWidget(m_subList);
+
m_hboxAdd = new QHBox( this );
- //m_hboxAdd->setSpacing( 10 );
- m_edit = new QLineEdit(m_hboxAdd );
m_add = new QPushButton(m_hboxAdd );
m_add->setText( tr("Add") );
+ m_del = new QPushButton(m_hboxAdd);
+ m_del->setText(tr("Remove"));
+
+ connect(m_add, SIGNAL(clicked() ),
+ this, SLOT(slotAdd() ) );
+ connect(m_del, SIGNAL(clicked() ),
+ this, SLOT(slotRemove() ) );
m_box->addWidget(m_hboxAdd );
-
+
m_always = new QCheckBox( tr("Always check this medium"), this );
m_box->addWidget( m_always );
@@ -153,8 +164,12 @@ void MediumMountWidget::readConfig( )
m_image->setChecked( m_config->readBoolEntry("image", true ) );
m_text->setChecked ( m_config->readBoolEntry("text" , true ) );
m_video->setChecked( m_config->readBoolEntry("video", true ) );
};
+ m_config->setGroup("subdirs");
+ QStringList entries = m_config->readListEntry("subdirs",':');
+ m_subList->clear();
+ m_subList->insertStringList(entries);
}
void MediumMountWidget::writeConfig()
{
@@ -169,18 +184,44 @@ void MediumMountWidget::writeConfig()
m_config->writeEntry("image", m_image->isChecked() );
m_config->writeEntry("text" , m_text->isChecked() );
m_config->writeEntry("video", m_video->isChecked() );
}
+ m_config->setGroup("subdirs");
+ QStringList entries;
+ QString ctext;
+ for (int i = 0; i < m_subList->count();++i) {
+ ctext = m_subList->text(i);
+ if (ctext.isEmpty())
+ continue;
+ if (ctext.startsWith("/")&&ctext.length()>1) {
+ ctext = ctext.right(ctext.length()-1);
+ }
+ entries.append(ctext);
+ }
+ m_config->writeEntry("subdirs",entries,':');
}
MediumMountWidget::~MediumMountWidget()
{
delete m_config;
}
void MediumMountWidget::slotAdd()
{
+ if (m_subList->currentText()==m_subList->text(m_subList->currentItem()))
+ return;
+ m_subList->insertItem(m_subList->currentText());
+}
+void MediumMountWidget::slotRemove()
+{
+ QString text = m_subList->currentText();
+ if (text != m_subList->text(m_subList->currentItem())) {
+ m_subList->clearEdit ();
+ } else {
+ m_subList->removeItem(m_subList->currentItem());
+ }
}
+
void MediumMountWidget::slotStateChanged()
{
bool state = !(m_all->isChecked());
diff --git a/noncore/settings/mediummount/mediumwidget.h b/noncore/settings/mediummount/mediumwidget.h
index 0f27117..28ae369 100644
--- a/noncore/settings/mediummount/mediumwidget.h
+++ b/noncore/settings/mediummount/mediumwidget.h
@@ -17,8 +17,9 @@ class QHBoxLayout;
class QGroupBox;
class QVBox;
class QHBox;
class QLineEdit;
+class QComboBox;
namespace MediumMountSetting {
class MediumMountWidget : public QWidget {
@@ -31,8 +32,9 @@ namespace MediumMountSetting {
void writeConfig();
private slots:
void slotAdd();
+ void slotRemove();
void slotStateChanged();
private:
void readConfig();
@@ -50,10 +52,11 @@ namespace MediumMountSetting {
QHBox *m_infoBox;
QLabel *m_label;
QLabel *m_desc;
- QLineEdit *m_edit;
QPushButton *m_add;
+ QComboBox *m_subList;
+ QPushButton *m_del;
QVBoxLayout *m_box;
QGridLayout *m_checks;