From 7e1dce1560e45ef7fad91a8da2d0d96c1b166df9 Mon Sep 17 00:00:00 2001 From: zecke Date: Sun, 25 May 2003 17:51:52 +0000 Subject: die here too --- diff --git a/libopie/ofileselector/.cvsignore b/libopie/ofileselector/.cvsignore deleted file mode 100644 index 6d678c6..0000000 --- a/libopie/ofileselector/.cvsignore +++ b/dev/null @@ -1 +0,0 @@ -config.in diff --git a/libopie/ofileselector/MANIFEST b/libopie/ofileselector/MANIFEST deleted file mode 100644 index 2730a1c..0000000 --- a/libopie/ofileselector/MANIFEST +++ b/dev/null @@ -1,29 +0,0 @@ -Hija, -dunno if that is to call a manifest but here is -an quick overview how the OFileSelector is implemented -and whats the whole purpose is. - -OFileSelector is meant to be extendable by design. It's divided -into a shell the class OFileSelector which is a dispatcher -between worlds and gives a common interface to the programmer. -Then there is the OLister class which is a lister of files. -It's responsible for taking care of a filesystem... but it's not limited -to local filesystem. You can have a FTP lister, Bluetooth Device Lister, -IrdaDevice Lister, Local Documents Lister, a PIM Lister an X-Ref lister... -they will operate on the level of filesystems.... - -A OFileView is the other part of the FileSelector it's responsible -for the things represented to the USER. -There is a ListView and a IconView and possible more views to come. - -Then there is a PixmapProvider which is responsible for providing pixmaps -for a mimetype. This can be used for something like a Pixmap preview.... - - -The lister is told to reparse() then it adds it things to the mainview -on selection the URL get's generated in more than one step. -1. The UI notifies the lister about activation -2. The Lister assembles the URL -3. the Lister notifies the OFileSelector -4. the OFileSelector emits a signal - diff --git a/libopie/ofileselector/configure b/libopie/ofileselector/configure deleted file mode 100755 index c66fd82..0000000 --- a/libopie/ofileselector/configure +++ b/dev/null @@ -1,301 +0,0 @@ -#!/bin/sh -# -# Configures to build the Qtopia Environment -# -# Copyright 1999-2000 Trolltech AS. All rights reserved. -# - -PLATFORM=generic -SHARING=shared -DEBUG= -QCONFIGARG= - -touch .test.qpe. -if [ '!' -f ${OPIEDIR}/.test.qpe. ]; -then - rm .test.qpe. - echo - echo - echo ' The environment variable $OPIEDIR is not set correctly. It is currently' - echo ' set to "'$OPIEDIR'", but it should be set to this directory,' - echo ' which is "'`pwd`'".' - echo - echo ' Please read the INSTALL file for instructions on how to set $OPIEDIR' - echo ' correctly. If you have set $OPIEDIR in your .profile or .login, you ' - echo ' will need to log out and log in again to make the setting effective.' - echo - echo - exit 1 -fi -rm .test.qpe. - -if [ '!' -f $TMAKEPATH/tmake.conf ] -then - # You have tmake. We'll regenerate the file for you... - echo ' The environment variable $TMAKEPATH is not set correclty. ' - echo ' It should be set to the tmake path' - echo - echo ' Please read the INSTALL file for instructions on how to set $TMAKEPATH' - echo ' to the environment variable correctly.' - exit 1 -fi - -VERSION_MAJ=$(sed -n -e 's/.*QPE_VERSION "\([0-9]*\)\.[0-9]*\.[0-9]*.*".*/\1/p' library/library.pro-v -mv library/library.pro-v library/library.pro - -if [ "$QT3" = yes ] -then - VCONFIG="CONFIG+=qt3" -else - VCONFIG="CONFIG+=qt2" -fi - -if [ -f $TMAKEPATH/tmake.conf ] -then - # You have tmake. We'll regenerate the file for you... - echo "Makefiles will be regenerated." -fi - -H=`pwd` -if [ -z "$TOMAKE" ] -then - TOMAKE=`make showcomponents` -fi - -for a in $TOMAKE ; do - N=$a/Makefile - M=$a/Makefile.in - O=$a/Makefile.add - f=`basename $a` - - if [ -f "$TMAKEPATH/tmake.conf" -a -f "$a/$f.pro" ] - then - ( cd $a; - TMAKEPATH=$QTDIR/tmake:$TMAKEPATH \ - tmake $QCONFIGARG CONFIG+=embedded $VCONFIG \ - -t $H/qt/tmake/propagate.t $f.pro | - sed -e "s|$QTDIR|\$(QTDIR)|g" -e "s|$OPIEDIR|\$(OPIEDIR)|g" >Makefile.in; - ) - echo -n "." -# echo Building $N.. - appname=`grep '^TARGET' $a/$f.pro | sed 's/^TARGET.*=//' | tr -d " \t"` - translation=`grep '^TRANSLATION.*[^+]=.*' $a/$f.pro | sed 's,^TRANSL.*=.*i18n\/.*\/,,' | sed 's/ //g' | sed 's,\.ts.*,,' | sed 's,^lib,,' ` - if [ -n "$translation" -a -n "$appname" ] - then - if [ "$appname" != "$translation" ] - then - echo - echo "Warning: translation and appname disagree in $a/$f.pro" - fi - fi - - fi - - cat > $N <> $N - if [ -n "$SED" ] - then - sed -e "$SED" $M >> $N - else - cat $M >> $N - fi - - cat >> $N <> $N $O - fi - -done - -MAKE=make -echo -echo "Opie is now configured for building. Just run $MAKE (or $MAKE single)." -echo "To reconfigure, run $MAKE clean and configure." -echo diff --git a/libopie/ofileselector/libopie.pro b/libopie/ofileselector/libopie.pro deleted file mode 100644 index 5cc6368..0000000 --- a/libopie/ofileselector/libopie.pro +++ b/dev/null @@ -1,104 +0,0 @@ -TEMPLATE = lib -CONFIG += qte warn_on release -HEADERS = ofontmenu.h \ - ocolorbutton.h \ - ofileselector/odefaultfactories.h \ - ofileselector/ofiledialog.h \ - ofileselector/ofilelistview.h \ - ofileselector/ofileselector.h \ - ofileselector/ofileselectoritem.h \ - ofileselector/ofileselectormain.h \ - ofileselector/ofileview.h \ - ofileselector/olister.h \ - ofileselector/olocallister.h \ - ofileselector/opixmapprovider.h \ - tododb.h \ - ocheckitem.h todoevent.h todoresource.h \ - todovcalresource.h xmltree.h \ - colordialog.h colorpopupmenu.h \ - oclickablelabel.h oprocctrl.h \ - oprocess.h odevice.h \ - otimepicker.h otabwidget.h \ - otabbar.h otabinfo.h \ - ofontselector.h \ - pim/opimrecord.h \ - pim/otodo.h \ - pim/orecordlist.h \ - pim/opimaccesstemplate.h \ - pim/opimaccessbackend.h \ - pim/otodoaccess.h \ - pim/otodacessbackend.h \ - pim/ocontact.h \ - pim/ocontactaccess.h \ - pim/ocontactaccessbackend.h \ - pim/ocontactaccessbackend_xml.h \ - pim/obackendfactory.h \ - pim/opimcache.h \ - pim/otodoaccessvcal.h \ - pim/orecur.h \ - orecurrancewidget.h -# pim/otodoaccesssql.h \ - -SOURCES = ofontmenu.cc \ - ocolorbutton.cpp \ - ofileselector/odefaultfactories.cpp \ - ofileselector/ofiledialog.cpp \ - ofileselector/ofilefactory.cpp \ - ofileselector/ofilelistview.cpp \ - ofileselector/ofileselector.cpp \ - ofileselector/ofileselectoritem.cpp \ - ofileselector/ofileselectormain.cpp \ - ofileselector/ofileview.cpp \ - ofileselector/olister.cpp \ - ofileselector/olocallister.cpp \ - ofileselector/opixmapprovider.cpp \ - xmltree.cc \ - ocheckitem.cpp tododb.cpp todoevent.cpp \ - todovcalresource.cpp colordialog.cpp \ - colorpopupmenu.cpp oclickablelabel.cpp \ - oprocctrl.cpp oprocess.cpp \ - odevice.cpp otimepicker.cpp \ - otabwidget.cpp otabbar.cpp \ - ofontselector.cpp \ - pim/otodo.cpp \ - pim/opimrecord.cpp \ - pim/otodoaccess.cpp \ - pim/otodoaccessbackend.cpp \ - pim/otodoaccessxml.cpp \ - pim/ocontact.cpp \ - pim/ocontactaccess.cpp \ - pim/otodoaccessvcal.cpp \ - pim/orecur.cpp \ - orecurrancewidget.cpp -# pim/otodoaccesssql.cpp \ - -TARGET = opie -INCLUDEPATH += $(OPIEDIR)/include -DESTDIR = $(OPIEDIR)/lib$(PROJMAK) -#VERSION = 1.0.0 - -# LIBS += -lopiesql - -INTERFACES = otimepickerbase.ui orecurrancebase.ui - -TRANSLATIONS = ../i18n/de/libopie.ts \ - ../i18n/nl/libopie.ts \ - ../i18n/xx/libopie.ts \ - ../i18n/en/libopie.ts \ - ../i18n/es/libopie.ts \ - ../i18n/fr/libopie.ts \ - ../i18n/hu/libopie.ts \ - ../i18n/ja/libopie.ts \ - ../i18n/ko/libopie.ts \ - ../i18n/no/libopie.ts \ - ../i18n/pl/libopie.ts \ - ../i18n/pt/libopie.ts \ - ../i18n/pt_BR/libopie.ts \ - ../i18n/sl/libopie.ts \ - ../i18n/zh_CN/libopie.ts \ - ../i18n/zh_TW/libopie.ts \ - ../i18n/da/libopie.ts - - - -include ( $(OPIEDIR)/include.pro ) diff --git a/libopie/ofileselector/odefaultfactories.cpp b/libopie/ofileselector/odefaultfactories.cpp deleted file mode 100644 index 2f8ef9b..0000000 --- a/libopie/ofileselector/odefaultfactories.cpp +++ b/dev/null @@ -1,19 +0,0 @@ -#include "ofilelistview.h" -#include "olocallister.h" - - -#include "odefaultfactories.h" - -extern "C" { - - - - OFileView* newFileListView( OFileSelector* sel, QWidget* par ) { - return new OFileListView(par, sel ); - } - - OLister* newLocalLister( OFileSelector* sel) { - return new OLocalLister( sel ); - } - -}; diff --git a/libopie/ofileselector/odefaultfactories.h b/libopie/ofileselector/odefaultfactories.h deleted file mode 100644 index 0cc90e5..0000000 --- a/libopie/ofileselector/odefaultfactories.h +++ b/dev/null @@ -1,16 +0,0 @@ -#ifndef OPIE_DEFAULT_FACTORIES_H -#define OPIE_DEFAULT_FACTORIES_H - -#include "ofilefactory.h" - -extern "C" { - - OFileView* newFileListView( OFileSelector*, QWidget* parent ); - - OLister* newLocalLister(OFileSelector* ); - - -}; - - -#endif diff --git a/libopie/ofileselector/ofiledialog.cpp b/libopie/ofileselector/ofiledialog.cpp deleted file mode 100644 index d137c66..0000000 --- a/libopie/ofileselector/ofiledialog.cpp +++ b/dev/null @@ -1,116 +0,0 @@ -/* -               =. This file is part of the OPIE Project -             .=l. Copyright (c) 2002 <> -           .>+-= - _;:,     .>    :=|. This library is free software; you can -.> <`_,   >  .   <= redistribute it and/or modify it under -:`=1 )Y*s>-.--   : the terms of the GNU Library General Public -.="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. -    .%`+i>       _;_. -    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU -..}^=.=       =       ; Library General Public License for more -++=   -.     .`     .: details. - :     =  ...= . :.=- - -.   .:....=;==+<; You should have received a copy of the GNU -  -_. . .   )=.  = Library General Public License along with -    --        :-=` this library; see the file COPYING.LIB. - If not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. - -*/ - -#include -#include -#include -#include - -#include "ofiledialog.h" - -OFileDialog::OFileDialog(const QString &caption, - QWidget *wid, int mode, int selector, - const QString &dirName, - const QString &fileName, - const QMap& mimetypes ) - : QDialog( wid, "OFileDialog", true ) -{ - // QVBoxLayout *lay = new QVBoxLayout(this); - //showMaximized(); - QVBoxLayout *lay = new QVBoxLayout(this ); - file = new OFileSelector(this , mode, selector, - dirName, fileName, - mimetypes ); - lay->addWidget( file ); - - //lay->addWidget( file ); - //showFullScreen(); - setCaption( caption.isEmpty() ? tr("FileDialog") : caption ); - connect(file, SIGNAL(fileSelected(const QString&) ), - this, SLOT(slotFileSelected(const QString&) ) ); - - connect(file, SIGNAL(dirSelected(const QString &) ), - this, SLOT(slotDirSelected(const QString &) ) ); - - - file->setYesCancelVisible( false ); // relayout -} -QString OFileDialog::mimetype()const -{ - return QString::null; -} -QString OFileDialog::fileName()const -{ - return file->selectedName(); -} -DocLnk OFileDialog::selectedDocument()const -{ - return file->selectedDocument(); -} -QString OFileDialog::getOpenFileName(int selector, - const QString &startDir, - const QString &file, - const MimeTypes &mimes, - QWidget *wid, - const QString &caption ) -{ - QString ret; - OFileDialog dlg( caption.isEmpty() ? tr("Open") : caption, - wid, OFileSelector::Open, selector, startDir, file, mimes); - dlg.showMaximized(); - if( dlg.exec() ) - ret = dlg.fileName(); - - return ret; -} -QString OFileDialog::getSaveFileName(int selector, - const QString &startDir, - const QString &file, - const MimeTypes &mimes, - QWidget *wid, - const QString &caption ) -{ - QString ret; - OFileDialog dlg( caption.isEmpty() ? tr("Save") : caption, - wid, OFileSelector::Save, selector, startDir, file, mimes); - dlg.showMaximized(); - if( dlg.exec() ) - ret = dlg.fileName(); - - return ret; -} - -void OFileDialog::slotFileSelected(const QString & ) -{ - accept(); -} -void OFileDialog::slotDirSelected(const QString & ) -{ - // if mode - //accept(); -} diff --git a/libopie/ofileselector/ofiledialog.h b/libopie/ofileselector/ofiledialog.h deleted file mode 100644 index e368e96..0000000 --- a/libopie/ofileselector/ofiledialog.h +++ b/dev/null @@ -1,78 +0,0 @@ -/* -               =. This file is part of the OPIE Project -             .=l. Copyright (c) 2002 zecke -           .>+-= - _;:,     .>    :=|. This library is free software; you can -.> <`_,   >  .   <= redistribute it and/or modify it under -:`=1 )Y*s>-.--   : the terms of the GNU Library General Public -.="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. -    .%`+i>       _;_. -    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU -..}^=.=       =       ; Library General Public License for more -++=   -.     .`     .: details. - :     =  ...= . :.=- - -.   .:....=;==+<; You should have received a copy of the GNU -  -_. . .   )=.  = Library General Public License along with -    --        :-=` this library; see the file COPYING.LIB. - If not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. - -*/ - - -#ifndef OpieFileDialog_h -#define OpieFileDialog_h - -#include - -//#include -#include "ofileselector.h" - -class OFileDialog : public QDialog { - Q_OBJECT - public: - OFileDialog(const QString &caption, - QWidget *, int mode, int selector, - const QString &dirName, - const QString &fileName = QString::null, - const MimeTypes &mimetypes = MimeTypes() ); - QString mimetype() const; - QString fileName() const; - DocLnk selectedDocument()const; - - // static methods - static QString getOpenFileName(int selector, - const QString& startDir = QString::null, - const QString &fileName = QString::null, - const MimeTypes& mime = MimeTypes(), - QWidget *wid = 0, - const QString &caption = QString::null ); - - static QString getSaveFileName(int selector, - const QString& startDir = QString::null, - const QString& fileName = QString::null, - const MimeTypes& mimefilter = MimeTypes(), - QWidget *wid = 0, - const QString &caption = QString::null ); - - //let's OFileSelector catch up first - //static QString getExistingDirectory(const QString& startDir = QString::null, - // QWidget *parent = 0, - // const QString& caption = QString::null ); - private: - class OFileDialogPrivate; - OFileDialogPrivate *d; - OFileSelector *file; - - private slots: - void slotFileSelected( const QString & ); - void slotDirSelected(const QString & ); -}; -#endif diff --git a/libopie/ofileselector/ofilefactory.cpp b/libopie/ofileselector/ofilefactory.cpp deleted file mode 100644 index aa143b4..0000000 --- a/libopie/ofileselector/ofilefactory.cpp +++ b/dev/null @@ -1,58 +0,0 @@ -#include "ofilefactory.h" - -OFileFactory::OFileFactory() { -} -OFileFactory::~OFileFactory() { -} -QStringList OFileFactory::lister()const { - QStringList list; - QMap::ConstIterator it; - for ( it = m_lister.begin(); it != m_lister.end(); ++it ) { - list << it.key(); - } - return list; -} -QStringList OFileFactory::views()const { - QStringList list; - QMap::ConstIterator it; - for (it = m_view.begin(); it != m_view.end(); ++it ) { - list << it.key(); - } - - return list; -} -OFileView* OFileFactory::view( const QString& name, - OFileSelector* sel, QWidget* par) { - OFileView* vie= 0l; - - QMap::Iterator it; - it = m_view.find( name ); - - if ( it != m_view.end() ) { - vie = (*(it.data() ) )(sel, par); - } - return vie; -} -OLister* OFileFactory::lister(const QString& name, OFileSelector* sel) { - OLister* lis = 0l; - - QMap::Iterator it; - it = m_lister.find( name ); - if ( it != m_lister.end() ) { - lis = (*(it.data() ) )(sel); - } - - return lis; -} -void OFileFactory::addLister( const QString& name, listerFact fact ) { - m_lister.insert( name, fact ); -} -void OFileFactory::addView( const QString& name, viewFact fact ) { - m_view.insert( name, fact ); -} -void OFileFactory::removeLister( const QString& name) { - m_lister.remove( name ); -} -void OFileFactory::removeView( const QString& name) { - m_view.remove( name ); -} diff --git a/libopie/ofileselector/ofilefactory.h b/libopie/ofileselector/ofilefactory.h deleted file mode 100644 index 96fb00d..0000000 --- a/libopie/ofileselector/ofilefactory.h +++ b/dev/null @@ -1,32 +0,0 @@ -#ifndef OFILE_FACTORY_H -#define OFILE_FACTORY_H - -#include "olister.h" -#include "ofileview.h" -class OFileFactory { -public: - typedef OLister* (*listerFact)(OFileSelector*); - typedef OFileView* (*viewFact)(OFileSelector*, QWidget*); - OFileFactory(); - ~OFileFactory(); - - QStringList lister()const; - QStringList views()const; - - OFileView* view( const QString& name, OFileSelector*, QWidget* ); - OLister* lister( const QString& name, OFileSelector* ); - - void addLister( const QString&, listerFact fact ); - void addView( const QString&, viewFact ); - - void removeLister( const QString& ); - void removeView( const QString& ); - -private: - QMap m_lister; - QMap m_view; - -}; - - -#endif diff --git a/libopie/ofileselector/ofilelistview.cpp b/libopie/ofileselector/ofilelistview.cpp deleted file mode 100644 index fe8acf0..0000000 --- a/libopie/ofileselector/ofilelistview.cpp +++ b/dev/null @@ -1,201 +0,0 @@ - -#include - -#include -#include -#include - -#include "ofileselector.h" -#include "ofileselectoritem.h" -#include "ofilelistview.h" - - -OFileListView::OFileListView( QWidget* parent, OFileSelector* sel) - : QListView( parent ), OFileView( sel ) -{ - QPEApplication::setStylusOperation( viewport(), - QPEApplication::RightOnHold); - addColumn(" " ); - addColumn(tr("Name"), 135 ); - addColumn(tr("Size"), -1 ); - addColumn(tr("Date"), 60 ); - addColumn(tr("Mime Type"), -1 ); - QHeader *head = header(); - head->hide(); - setSorting( 1 ); - setAllColumnsShowFocus( TRUE ); - - connect(this, SIGNAL(selectionChanged() ), - this, SLOT(slotSelectionChanged() ) ); - - connect(this, SIGNAL(currentChanged(QListViewItem *) ), - this, SLOT(slotCurrentChanged(QListViewItem * ) ) ); - - connect(this, SIGNAL(mouseButtonClicked(int, QListViewItem*, const QPoint &, int) ), - this, SLOT(slotClicked( int, QListViewItem *, const QPoint &, int) ) ); - - connect(this, SIGNAL(mouseButtonPressed(int, QListViewItem *, const QPoint &, int )), - this, SLOT(slotRightButton(int, QListViewItem *, const QPoint &, int ) ) ); -} -OFileListView::~OFileListView() { - -} -void OFileListView::clear() { - QListView::clear(); -} -void OFileListView::addFile( const QPixmap& pix, - const QString&, - QFileInfo* info, - const QString& extra, - bool isSymlink ) { - QString dir; - QString name; - bool locked = false; - - dir = info->dirPath( true ); - - if( isSymlink ) - name = info->fileName() + " -> " +info->dirPath() + "/" + info->readLink(); - else { - name = info->fileName(); - if( ( selector()->mode() == OFileSelector::Open && !info->isReadable() ) || - ( selector()->mode() == OFileSelector::Save && !info->isWritable() ) ){ - - locked = true; - } - } - new OFileSelectorItem( this, pix, name, - info->lastModified().toString(), - QString::number( info->size() ), - dir, locked, extra ); -} -void OFileListView::addFile( const QPixmap&, - const QString& /*mime*/, const QString& /*dir*/, - const QString& /*file*/, - const QString& /*extra*/, - bool /*isSyml*/ ) { - -} -void OFileListView::addDir( const QPixmap& pix, const QString&, - QFileInfo* info, - const QString& extra , - bool symlink ) { - - bool locked = false; - QString name; - - name = symlink ? info->fileName() + "->" + info->dirPath(true) + "/" +info->readLink() : info->fileName() ; - - new OFileSelectorItem( this, pix, name, - info->lastModified().toString(), - QString::number( info->size() ), - info->dirPath( true ), locked, extra, - true ); - -} -void OFileListView::addDir( const QPixmap&, - const QString& /*mime*/, const QString& /*dir*/, - const QString& /*file*/, - const QString& /*extra*/, - bool ) { - -} -void OFileListView::addSymlink( const QPixmap&, - const QString& /*mime*/, - QFileInfo* /*info*/, - const QString& /*extra*/, - bool /*isSym*/ ) { - -} -void OFileListView::addSymlink(const QPixmap&, - const QString& /*m*/, const QString& /*path*/, - const QString& /*file*/, - const QString& /*extra*/, - bool /*isSym*/ ) { - -} -void OFileListView::cd( const QString& ) { - -} -QWidget* OFileListView::widget() { - return this; -} -QString OFileListView::selectedName()const{ - QListViewItem *item = currentItem(); - if (!item ) - return QString::null; - - return item->text( 1 ); -} -QString OFileListView::selectedExtra()const{ - QListViewItem* item = currentItem(); - if (!item) return QString::null; - OFileSelectorItem* fit = (OFileSelectorItem*)fit; - - return fit->extra(); -} -QStringList OFileListView::selectedNames()const { - QStringList list; - list << selectedName(); - return list; -} -QString OFileListView::selectedPath()const { - return QString::null; -} -QStringList OFileListView::selectedPaths()const { - QStringList list; - list << selectedPath(); - return list; -} -int OFileListView::fileCount() { - return childCount(); -} -void OFileListView::sort() { - QListView::sort(); -} -void OFileListView::slotSelectionChanged() { - -} -void OFileListView::slotCurrentChanged( QListViewItem* item) { - if (!item ) - return; - - OFileSelectorItem* sel = (OFileSelectorItem*) item; - - qWarning("current changed"); - if(!sel->isDir() ){ - updateLine( sel->text(1) ); - - if (selector()->mode() == OFileSelector::Fileselector ) { - QStringList str = QStringList::split("->", sel->text(1) ); - fileSelected(sel->directory(), str[0].stripWhiteSpace(),sel->extra() ); - } - } -} -void OFileListView::slotClicked( int button, QListViewItem* item, - const QPoint&, int ) { - if ( !item ) - return; - - if( button != Qt::LeftButton ) - return; - - OFileSelectorItem *sel = (OFileSelectorItem*)item; - - if(!sel->isLocked() ){ - QStringList str = QStringList::split("->", sel->text(1) ); - if( sel->isDir() ){ - changedDir( sel->directory(), str[0].stripWhiteSpace(),sel->extra() ); - }else{ - updateLine( str[0].stripWhiteSpace() ); - fileSelected( sel->directory(),str[0].stripWhiteSpace(), sel->extra() ); - } - } -} -void OFileListView::slotRightButton( int button, QListViewItem* item, - const QPoint&, int ) { - if (!item || (button != Qt::RightButton )) - return; - - /* raise contextmenu */ -} diff --git a/libopie/ofileselector/ofilelistview.h b/libopie/ofileselector/ofilelistview.h deleted file mode 100644 index f2eac57..0000000 --- a/libopie/ofileselector/ofilelistview.h +++ b/dev/null @@ -1,69 +0,0 @@ -#ifndef OPIE_FILE_LIST_VIEW_H -#define OPIE_FILE_LIST_VIEW_H - -#include -#include - -#include "ofileview.h" - -class OFileListView : public QListView, public OFileView { - Q_OBJECT -public: - OFileListView( QWidget* parent, OFileSelector* ); - ~OFileListView(); - - void clear(); - void addFile( const QPixmap&, - const QString& mine, - QFileInfo* info, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - - void addFile( const QPixmap&, - const QString& mime, - const QString& dir, - const QString& file, - const QString& extra = QString::null, - bool = false ); - - void addDir( const QPixmap&, - const QString& mime, - QFileInfo* info, - const QString& extra = QString::null, - bool = FALSE ); - - void addDir( const QPixmap&, - const QString& mime, const QString& dir, - const QString& file, - const QString& extra = QString::null, - bool = FALSE ); - - void addSymlink( const QPixmap&, - const QString& mime, - QFileInfo* info, - const QString& extra = QString::null, - bool = FALSE ); - void addSymlink( const QPixmap&, - const QString& mine, const QString& path, - const QString& file, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - void cd( const QString& path ); - QWidget* widget(); - void sort(); - - QString selectedName()const ; - QStringList selectedNames()const; - - QString selectedPath()const; - QStringList selectedPaths()const; - QString selectedExtra()const; - int fileCount(); -private slots: - void slotSelectionChanged(); - void slotCurrentChanged(QListViewItem* ); - void slotClicked( int, QListViewItem*, const QPoint&, int ); - void slotRightButton(int, QListViewItem*, const QPoint&, int ); -}; - -#endif diff --git a/libopie/ofileselector/ofileselector.cpp b/libopie/ofileselector/ofileselector.cpp deleted file mode 100644 index abc2889..0000000 --- a/libopie/ofileselector/ofileselector.cpp +++ b/dev/null @@ -1,1095 +0,0 @@ - - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include "ofileview.h" -#include "ofileselectormain.h" -#include "ofileselector.h" -#include "olocallister.h" -#include "olister.h" -#include "odefaultfactories.h" - -QMap *OFileSelector::m_pixmaps = 0; - -namespace { - /* let's find the index for a specified string */ - int indexByString( const QComboBox *box, const QString &str ){ - int index= 0; - for(int i= 0; i < box->count(); i++ ){ - /* found */ - if( str == box->text(i ) ){ - index= i; - break; - } - } - return index; - } -} - -OFileSelector::OFileSelector( QWidget *wid, int mode, int selector, - const QString &dirName, - const QString &fileName, - const QMap& mimeTypes) - : QWidget( wid, "OFileSelector") -{ - m_mimetypes = mimeTypes; - if (mode == Save ) - m_name = fileName; - - initVars(); - - m_mode = mode; - m_selector = selector; - m_currentDir = dirName; - init(); -} - -OFileSelector::OFileSelector(const QString &mimeFilter, QWidget *parent, - const char *name, bool newVisible, - bool closeVisible ) - : QWidget( parent, name ) -{ - /* update the mimefilter */ - if (!mimeFilter.isEmpty() ) { - QStringList list = QStringList::split(";", mimeFilter ); - m_mimetypes.insert(mimeFilter, list ); - } - initVars(); - m_currentDir = QPEApplication::documentDir(); - m_mode = Fileselector; - m_selector = Normal; - m_shClose = closeVisible; - m_shNew = newVisible; - m_shLne = false; - m_shPerm = false; - m_shYesNo = false; - init(); - - -} - -OFileSelector::~OFileSelector() -{ - - -} - -void OFileSelector::setNewVisible( bool visible ) -{ - m_shNew = visible; - if (m_new ) - m_new->show(); -} -void OFileSelector::setCloseVisible( bool visible ) -{ - m_shClose = visible; - - if( m_close ) - m_close->show(); -} -void OFileSelector::reread() -{ - if( m_selector == Normal ) - initializeOldSelector(); - else - reparse(); -} - -const DocLnk *OFileSelector::selected() -{ - DocLnk *lnk = new DocLnk(selectedDocument() ); - return lnk; -} - -void OFileSelector::setYesCancelVisible( bool show ) -{ - initializeYes(); // FIXME if YesCancel is not shown we will initialize it to hide it :( - m_shYesNo = show; - - if( m_shYesNo ) - m_boxOk->show(); - else - m_boxOk->hide(); - -} -void OFileSelector::setToolbarVisible( bool show ) -{ - m_shTool = show; - - if(!m_shTool ){ - m_location->hide(); - m_up->hide(); - m_homeButton->hide(); - m_docButton->hide(); - }else{ - m_location->show(); - m_up->show(); - m_homeButton->show(); - m_docButton->show(); - } -} -void OFileSelector::setPermissionBarVisible( bool show ) -{ - m_shPerm = show; - initializePerm(); - - if( m_shPerm ) - m_checkPerm->show(); - else - m_checkPerm->hide(); -} -void OFileSelector::setLineEditVisible( bool show ) -{ - if( show ){ - initializeName(); - m_boxName->show(); - }else{ - // check if we showed before this is the way to go - if( m_shLne && m_boxName != 0 ) - m_boxName->hide(); - } - m_shLne = show; -} - -void OFileSelector::setChooserVisible( bool show ) -{ - m_shChooser = show; - initializeChooser(); - - if( m_shChooser ) - m_boxView->hide(); - else - m_boxView->show(); - -} - -QCheckBox* OFileSelector::permissionCheckbox() -{ - if( m_selector == Normal ) - return 0l; - else - return m_checkPerm; -} -bool OFileSelector::setPermission()const -{ - return m_checkPerm == 0 ? false : m_checkPerm->isChecked(); -} -void OFileSelector::setPermissionChecked( bool check ) -{ - if( m_checkPerm ) - m_checkPerm->setChecked( check ); -} - -void OFileSelector::setMode(int mode) // FIXME do direct raising -{ - m_mode = mode; - if( m_selector == Normal ) - return; -} -void OFileSelector::setShowDirs(bool dir) -{ - m_dir = dir; - if ( m_selector != Fileselector ) - reparse(); -} -void OFileSelector::setCaseSensetive(bool caSe ) -{ - m_case = caSe; - - if ( m_selector != Fileselector ) - reparse(); -} -void OFileSelector::setShowFiles(bool show ) -{ - m_files = show; - reparse(); -} -/// -bool OFileSelector::cd(const QString &path ) -{ - m_currentDir = path; - reparse(); - return true; -} -void OFileSelector::setSelector(int mode ) -{ - QString text; - switch( mode ){ - case Normal: - text = tr("Documents"); - break; - case Extended: - text = tr("List View"); - break; - case ExtendedAll: - text = tr("All List View"); - break; - } - slotViewCheck( text ); -} - -void OFileSelector::setPopupFactory(OPopupMenuFactory */*popup*/ ) -{ -/* m_custom = popup; - m_showPopup = true; -*/ -} - -QString OFileSelector::selectedName() const -{ - QString name; - if( m_selector == Normal ){ - DocLnk lnk = m_select->selectedDocument(); - name = lnk.file(); - }else { - name = currentLister()->selectedName(); - } - return name; -} -QStringList OFileSelector::selectedNames()const -{ - QStringList list; - if( m_selector == Normal ){ - list << selectedName(); - }else { - list << selectedName(); // FIXME implement multiple Selections - } - return list; -} -/** If mode is set to the Dir selection this will return the selected path. - * - * - */ -QString OFileSelector::selectedPath()const -{ - QString path; - if( m_selector == Normal ){ - path = QPEApplication::documentDir(); - } /* normal case to do */ - return path; -} -QStringList OFileSelector::selectedPaths() const -{ - QStringList list; - list << selectedPath(); - return list; -} -QString OFileSelector::directory()const -{ - if( m_selector == Normal ) - return QPEApplication::documentDir(); - - return QDir(m_currentDir).absPath(); -} - -int OFileSelector::fileCount() -{ - int count; - switch( m_selector ){ - case Normal: - count = m_select->fileCount(); - break; - case Extended: - case ExtendedAll: - default: - count = currentView()->fileCount(); - break; - } - return count; -} -DocLnk OFileSelector::selectedDocument() const -{ - DocLnk lnk; - switch( m_selector ){ - case Normal:{ - lnk = m_select->selectedDocument(); - break; - } - case Extended: - case ExtendedAll: - default: - lnk = DocLnk( selectedName() ); - break; - } - return lnk; -} -QValueList OFileSelector::selectedDocuments() const -{ - QValueList docs; - docs.append( selectedDocument() ); - return docs; -} - - -// slots internal - -void OFileSelector::slotOk() -{ - emit ok(); -} -void OFileSelector::slotCancel() -{ - emit cancel(); -} -/* switch the views */ -void OFileSelector::slotViewCheck(const QString &sel) -{ - setView( sel ); -} - -QString OFileSelector::currentMimeType() const{ - QString mime; - QString currentText; - if (m_shChooser && m_mimeCheck ) - currentText = m_mimeCheck->currentText(); - - qWarning("CurrentText" + currentText ); - if (tr("All") == currentText ) return QString::null; - else if (currentText.isEmpty() ) { - ; - }else { - QMap::ConstIterator it; - it = m_mimetypes.find( currentText ); - if ( it != m_mimetypes.end() ) { - mime = it.data().join(";"); - }else{ - mime = currentText; - } - } - return mime; -} -void OFileSelector::slotMimeCheck(const QString &mime) -{ - if( m_selector == Normal ){ - initializeOldSelector(); - - updateMimes(); - updateMimeCheck(); - m_mimeCheck->setCurrentItem(indexByString( m_mimeCheck, mime) ); - }else{ // others - qWarning("Mime %s", mime.latin1() ); - if(m_shChooser ){ - qWarning("Current Text %s", m_mimeCheck->currentText().latin1() ); - //m_mimeCheck->setCurrentItem(indexByString( m_mimeCheck, mime) ); - } - reparse(); - } -} -/* - * Ok if a non dir gets inserted into this combobox - * we need to change it - * QFileInfo and dirPath will give us the right Dir - */ -void OFileSelector::slotLocationActivated(const QString &file) -{ - qWarning("slotLocationActivated"); - QString name = file.left( file.find("<-", 0, TRUE ) ); - QFileInfo info( name ); - if ( info.isFile() ) - cd(info.dirPath( TRUE ) ); //absolute - else - cd(name ); -} -void OFileSelector::slotInsertLocationPath(const QString ¤tPath, int count) -{ - QStringList pathList; - bool underDog = FALSE; - for(int i=0;itext(i); - if( m_location->text(i) == currentPath) - underDog = TRUE; - } - if( !underDog) { - m_location->clear(); - if( currentPath.left(2)=="//") - pathList.append( currentPath.right(currentPath.length()-1) ); - else - pathList.append( currentPath ); - m_location->insertStringList( pathList,-1); - } -} -/* - * Do not crash anymore - * don't try to change dir to a file - */ -void OFileSelector::locationComboChanged() -{ - QFileInfo info( m_location->lineEdit()->text() ); - qWarning("info %s %s", info.dirPath(true).latin1(), m_location->lineEdit()->text().latin1() ); - if (info.isFile() ) - cd(info.dirPath(TRUE) ); //absolute path - else - cd( m_location->lineEdit()->text() ); -} -void OFileSelector::init() -{ - initFactory(); - m_lay = new QVBoxLayout( this ); - m_lay->setSpacing(0 ); - - /* take care of the main view... */ - initToolbar(); - //if( m_shChooser ) // the Chooser for the view and Mimetypes - initializeChooser(); - - /* initialize the file lister */ - if( m_selector == Normal ){ - QString mime; - if (!m_autoMime) { - if (!m_mimetypes.isEmpty() ) { - QMap::Iterator it; - it = m_mimetypes.begin(); // cause we're in the init - mime = it.data().join(";"); - } - } - initializeOldSelector(); - }else{ - initializeView(); - } - - if( m_shLne ) // the LineEdit with the current FileName - initializeName(); - - if( m_shPerm ) // the Permission QCheckBox - initializePerm(); - - if( m_shYesNo ) // the Yes No button row - initializeYes( ); - - if (m_selector != Normal ) - reparse(); - - showMaximized(); -} -void OFileSelector::updateMimes() -{ - if( m_autoMime ){ - m_mimetypes.clear(); - m_mimetypes.insert( tr("All"), QString::null ); - if( m_selector == Normal ){ - DocLnkSet set; - Global::findDocuments(&set, QString::null ); - QListIterator dit( set.children() ); - for( ; dit.current(); ++dit ){ - if( !m_mimetypes.contains( (*dit)->type() ) ) - m_mimetypes.insert( (*dit)->type(), (*dit)->type() ); - } - }// else done in reparse - } -} -void OFileSelector::initVars() -{ - if( m_mimetypes.isEmpty() ) - m_autoMime = true; - else - m_autoMime = false; - - m_shClose = false; - m_shNew = false; - m_shTool = true; - m_shPerm = false; - m_shLne = true; - m_shChooser = true; - m_shYesNo = true; - m_case = false; - m_dir = true; - m_files = true; - m_showPopup = false; - m_mainView = 0l; - m_fileView = 0l; - m_lister = 0l; - - if(m_pixmaps == 0 ) // init the pixmaps - initPics(); - - // pointers - m_location = 0; - m_mimeCheck = 0; - m_viewCheck = 0; - m_homeButton = 0; - m_docButton = 0; - m_hideButton = 0; - m_ok = 0; - m_cancel = 0; - m_reread = 0; - m_up = 0; - m_View = 0; - m_checkPerm = 0; - m_pseudo = 0; - m_pseudoLayout = 0; - m_select = 0; - m_lay = 0; - m_Oselector = 0; - m_boxToolbar = 0; - m_boxOk = 0; - m_boxName = 0; - m_boxView = 0; - m_edit = 0; - m_fnLabel = 0; - m_new = 0; - m_close = 0; -} -void OFileSelector::initializeName() -{ - /** Name Layout Line - * This is the Layout line arranged in - * horizontal way each components - * are next to each other - * but we will only do this if - * we didn't initialize a while ago. - */ - if( m_boxName == 0 ){ - m_boxName = new QHBox( this ); // remove this this? or use a QHBox - m_fnLabel = new QLabel( m_boxName ); - m_fnLabel->setText( tr("Name:") ); - m_edit = new QLineEdit( m_boxName ); - m_edit->setText( m_name ); - //m_boxName->addWidget( m_fnLabel ); - m_boxName->setMargin( 5 ); - m_boxName->setSpacing( 8 ); - //m_boxName->setStretchFactor(m_edit, 100 ); // 100 is stretch factor - - m_lay->addWidget( m_boxName, 0 ); // add it to the topLevel layout - }// else we already initialized - // maybe show the components? - // -} -void OFileSelector::initializeYes() -{ - /** The Save Cancel bar - * - */ - if( m_boxOk == 0 ){ - m_boxOk = new QHBox( this ); - m_ok = new QPushButton( tr("&Save"),m_boxOk , "save" ); - m_cancel = new QPushButton( tr("C&ancel"), m_boxOk, "cancel" ); - - //m_boxOk->addWidget( m_ok ); - //m_boxOk->addWidget( m_cancel ); - m_boxOk->setMargin( 5 ); - m_boxOk->setSpacing( 10 ); - m_lay->addWidget( m_boxOk, 0 ); - - connect( m_ok, SIGNAL( clicked() ), - this, SLOT(slotOk() ) ); - connect( m_cancel, SIGNAL( clicked() ), - this, SLOT( slotCancel() ) ); - } -} -/* - * OK m_mimeCheck is a QComboBox we now want to fill - * out that combobox - * if automime we need to update the mimetypes - */ -void OFileSelector::updateMimeCheck() { - m_mimeCheck->clear(); - if (m_autoMime ) { - //m_mimeCheck->insertItem( tr("All") ); - updateMimes(); - } - - QMap::Iterator it; - for (it = m_mimetypes.begin(); it != m_mimetypes.end(); ++it ) { - m_mimeCheck->insertItem( it.key() ); - } -} - -void OFileSelector::initializeChooser() -{ - if( m_boxView == 0 ){ - m_boxView = new QHBox( this ); - m_viewCheck = new QComboBox( m_boxView, "view check"); - m_mimeCheck = new QComboBox( m_boxView, "mime check"); - m_boxView->setSpacing( 8 ); - m_lay->addWidget(m_boxView, 0 ); - - - updateMimeCheck(); - fillList(); - - connect( m_viewCheck, SIGNAL( activated(const QString & ) ), - this, SLOT( slotViewCheck(const QString & ) ) ); - connect( m_mimeCheck, SIGNAL( activated(const QString & ) ), - this, SLOT( slotMimeCheck( const QString & ) ) ); - } -} -/* generate the buttons for the toolbar */ -void OFileSelector::initToolbar() { - m_mainView = new OFileSelectorMain( this ); - - /* now generate the tool bar */ - qWarning( "toolbar" ); - m_pseudo = new QWidget( m_mainView, "Pseudo Widget" ); - m_pseudoLayout = new QVBoxLayout( m_pseudo ); - - m_boxToolbar = new QHBox( m_pseudo ); - m_boxToolbar->setSpacing( 0 ); - - // tool bar members now - m_location = new QComboBox( m_boxToolbar ); - m_location->setEditable( TRUE ); - m_location->setDuplicatesEnabled( FALSE ); - connect( m_location, SIGNAL(activated(const QString& ) ), - this, SLOT(slotLocationActivated(const QString& )) ); - connect( m_location->lineEdit(), SIGNAL(returnPressed() ) , - this, SLOT(locationComboChanged() ) ); - - // UP Button - m_up = new QPushButton( Resource::loadIconSet("up"), QString::null, - m_boxToolbar, "cdUpButton" ); - m_up->setFixedSize( QSize(20, 20 ) ); - connect( m_up, SIGNAL( clicked() ), this, SLOT(cdUP() ) ); - m_up->setFlat( TRUE ); - - // Home Button - m_homeButton = new QPushButton(Resource::loadIconSet("home"), - QString::null, m_boxToolbar ); - m_homeButton->setFixedSize( QSize(20, 20 ) ); - connect(m_homeButton, SIGNAL(clicked() ), this, SLOT(slotHome() ) ); - m_homeButton->setFlat( TRUE ); - - // Documents Button - m_docButton = new QPushButton( Resource::loadIconSet("DocsIcon"), - QString::null, m_boxToolbar, - "docsButton" ); - m_docButton->setFixedSize( QSize(20, 20 ) ); - m_docButton->setFlat( true ); - connect( m_docButton, SIGNAL(clicked() ), - this, SLOT(slotDoc() ) ); - - // close button - m_close = new QPushButton( Resource::loadIconSet( "close"), "", - m_boxToolbar ); - connect( m_close, SIGNAL(clicked() ), this, SIGNAL(closeMe() ) ); - m_close->setFixedSize( 20, 20 ); - - m_boxToolbar->setFixedHeight( 20 ); - m_pseudoLayout->addWidget(m_boxToolbar ); - - /* init the locations */ - initLocations(); - - if( !m_shTool ){ - m_location->hide( ); - m_up->hide( ); - m_homeButton->hide( ); - m_docButton->hide( ); - } - if(!m_shClose ) - m_close->hide(); - - m_mainView->setToolbar( m_pseudo ); - m_lay->addWidget( m_mainView, 100 ); -} -/* put default locations into the bar */ -void OFileSelector::initLocations () { - - // let;s fill the Location ComboBox - StorageInfo storage; - const QList &fs = storage.fileSystems(); - QListIterator it ( fs ); - for( ; it.current(); ++it ){ - const QString disk = (*it)->name(); - const QString path = (*it)->path(); - m_location->insertItem(path+ "<-"+disk ); - } - int count = m_location->count(); - m_location->insertItem( m_currentDir ); - m_location->setCurrentItem( count ); - -} -void OFileSelector::initializePerm() -{ - if( m_checkPerm == 0 ){ - m_checkPerm = new QCheckBox(tr("Set Permission"), this, "perm"); - m_checkPerm->setChecked( false ); - m_lay->addWidget( m_checkPerm ); - } -} -void OFileSelector::initPics() -{ - m_pixmaps = new QMap; - QPixmap pm = Resource::loadPixmap( "folder" ); - QPixmap lnk = Resource::loadPixmap( "opie/symlink" ); - - QPainter painter( &pm ); - painter.drawPixmap( pm.width()-lnk.width(), pm.height()-lnk.height(), lnk ); - pm.setMask( pm.createHeuristicMask( FALSE ) ); - m_pixmaps->insert("dirsymlink", pm ); - - QPixmap pm2 = Resource::loadPixmap( "lockedfolder" ); - QPainter pen(&pm2 ); - pen.drawPixmap(pm2.width()-lnk.width(), pm2.height()-lnk.height(), lnk ); - pm2.setMask( pm2.createHeuristicMask( FALSE ) ); - m_pixmaps->insert("symlinkedlocked", pm2 ); -} -// if a mime complies with the m_mimeCheck->currentItem -bool OFileSelector::compliesMime( const QString &path, const QString &mime ) -{ - if( mime == "All" ) - return true; - MimeType type( path ); - if( type.id() == mime ) - return true; - return false; -} -/* check if the mimetype in mime - * complies with the one which is current - */ -/* - * We've the mimetype of the file - * We need to get the stringlist of the current mimetype - * - * mime = image/jpeg - * QStringList = 'image/*' - * or QStringList = image/jpeg;image/png;application/x-ogg - * or QStringList = application/x-ogg;image/*; - * with all these mime filters it should get acceptes - * to do so we need to look if mime is contained inside - * the stringlist - * if it's contained return true - * if not ( I'm no RegExp expert at all ) we'll look if a '/*' - * is contained in the mimefilter and then we will - * look if both are equal until the '/' - */ -bool OFileSelector::compliesMime( const QString& mime ) { - qWarning("mimetype is %s", mime.latin1() ); - QString currentText; - if (m_shChooser ) - currentText = m_mimeCheck->currentText(); - - qWarning("current text is %s", currentText.latin1() ); - QMap::Iterator it; - QStringList list; - if ( currentText == tr("All") ) return true; - else if ( currentText.isEmpty() && !m_mimetypes.isEmpty() ) { - it = m_mimetypes.begin(); - list = it.data(); - }else if ( currentText.isEmpty() ) return true; - else{ - it = m_mimetypes.find(currentText ); - if ( it == m_mimetypes.end() ) qWarning("not there"), list << currentText; - else qWarning("found"), list = it.data(); - } - - - if ( list.contains(mime) ) return true; - qWarning("list doesn't contain it "); - QStringList::Iterator it2; - int pos; - for ( it2 = list.begin(); it2 != list.end(); ++it2 ) { - pos = (*it2).findRev("/*"); - if ( pos >= 0 ) { - if ( mime.contains( (*it2).left(pos) ) ) return true; - } - } - return false; -} -void OFileSelector::slotFileSelected( const QString &string ) -{ - if( m_shLne ) - m_edit->setText( string ); - emit fileSelected( string ); -} -void OFileSelector::slotFileBridgeSelected( const DocLnk &lnk ) -{ - slotFileSelected( lnk.name() ); - // emit fileSelected( lnk ); -} - - -void OFileSelector::slotDelete() -{ - /* - OFileSelectorItem *sel = (OFileSelectorItem*)m_View->currentItem(); - QStringList list = QStringList::split("->", sel->text(1) ); - if( sel->isDir() ){ - QString str = QString::fromLatin1("rm -rf ") + sel->directory() +"/" + list[0]; //better safe than sorry - switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+list[0], - tr("Yes"),tr("No"),0,1,1) ) { - case 0: - ::system(str.utf8().data() ); - break; - } - } else { - QFile::remove( list[0] ); - } - m_View->takeItem( sel ); - delete sel; - */ -} -void OFileSelector::cdUP() -{ - // FIXME won't work on non filesystem based systems - // better call the Olister - QDir dir( m_currentDir ); - dir.cdUp(); - if(dir.exists() ){ - m_currentDir = dir.absPath(); - reparse(); - int count = m_location->count(); - slotInsertLocationPath( m_currentDir, count); - m_location->setCurrentItem( indexByString( m_location, m_currentDir)); - } -} -void OFileSelector::slotHome() -{ - cd(QDir::homeDirPath() ); -} -void OFileSelector::slotDoc() -{ - cd(QPEApplication::documentDir() ); -} -void OFileSelector::slotNavigate( ) -{ - -} -// fill the View with life -void OFileSelector::reparse() -{ - if( m_selector == Normal ) - return; - - currentView()->clear(); - - if( m_shChooser) - qWarning("reparse %s", m_mimeCheck->currentText().latin1() ); - - QString currentMimeType; - - // let's update the mimetype - if( m_autoMime ){ - m_mimetypes.clear(); - // ok we can change mimetype so we need to be able to give a selection - if( m_shChooser ) { - currentMimeType = m_mimeCheck->currentText(); - m_mimeCheck->clear(); - - // let's find possible mimetypes - m_mimetypes = currentLister()->mimeTypes( m_currentDir ); - - // add them to the chooser - updateMimeCheck(); - m_mimeCheck->setCurrentItem( indexByString( m_mimeCheck, currentMimeType ) ); - currentMimeType = m_mimeCheck->currentText(); - } - }else { // no autoMime - // let the mimetype be set from out side the m_mimeCheck FEATURE - - if( m_shChooser ) - currentMimeType = m_mimeCheck->currentText(); - - } - // now we got our mimetypes we can add the files - - currentLister()->reparse( m_currentDir ); - /* we're done with adding let's sort */ - currentView()->sort(); - - - if( m_shTool ){ - m_location->insertItem( m_currentDir ); - - } - // reenable painting and updates -} -/* switch lister to @param lister */ -void OFileSelector::setLister(const QString& lister) { - QStringList listerList = factory()->lister(); - - if (listerList.contains(lister) ) { - delete (OLister*) m_lister; - m_lister = factory()->lister( lister, this ); - }else if (!m_lister ) { - /* - * if we do not have a lister - * we need to take the default one - */ - m_lister = new OLocalLister(this); - } - m_listerName = lister; -} -void OFileSelector::setView( const QString& lis ) { - qWarning("setView "); - fillList(); - if ( lis == tr("Documents") ) { - m_selector = Normal; - delete m_lister; - delete m_fileView; - m_lister = 0l; - m_fileView = 0l; - initializeOldSelector(); - }else { - qWarning("lis %s", lis.latin1() ); - QString list; - - delete m_lister; - delete m_fileView; - delete m_select; - m_lister =0l; - m_fileView = 0l; - m_select = 0l; - if ( lis.startsWith("All") ) { - m_selector = ExtendedAll; - list = lis.mid(4 ).stripWhiteSpace(); - } else{ - list = lis; - m_selector = Extended; - } - setLister(m_listerName); - m_fileView = factory()->view( list, this, m_mainView ); - m_mainView->setWidget( m_fileView->widget() ); - reparse(); - } -} -/* - * the factory - */ -void OFileSelector::initFactory() { - m_fileFactory = new OFileFactory(); - m_fileFactory->addLister(tr("Files"), newLocalLister ); - m_fileFactory->addView(tr("List View"), newFileListView ); - /* dummy entry */ - m_fileFactory->addView(tr("Documents"), newFileListView ); -} - -void OFileSelector::fillList() { - qWarning("fill list"); - if (!m_viewCheck ) - return; - - m_viewCheck->clear(); - QStringList list = factory()->views(); - qWarning("views: " + list.join(";") ); - for (QStringList::Iterator it = list.begin(); it != list.end(); ++it ) { - qWarning( (*it) ); - if ( (*it) == tr("Documents") ) { - m_viewCheck->insertItem( (*it) ); - }else{ - m_viewCheck->insertItem( (*it) ); - m_viewCheck->insertItem( tr("All ") + (*it) ); - } - } -} -OFileFactory* OFileSelector::factory() { - return m_fileFactory; -} - - -OFileView* OFileSelector::currentView() { - return m_fileView; -} -OFileView* OFileSelector::currentView() const{ - return m_fileView; -} -int OFileSelector::filter() { - int filter; - if ( m_selector == ExtendedAll ) - filter = QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All; - else - filter = QDir::Files | QDir::Dirs | QDir::All ; - - return filter; -} -int OFileSelector::sorting() { - int sort; - - if (m_case ) - sort = ( QDir::IgnoreCase | QDir::Name | QDir::DirsFirst | QDir::Reversed ); - else - sort = ( QDir::Name | QDir::DirsFirst | QDir::Reversed ); - - return sort; -} -void OFileSelector::internFileSelected( const QString& s) { - emit fileSelected( s ); - DocLnk lnk( s ); - internFileSelected( lnk ); -} -void OFileSelector::internFileSelected( const DocLnk& d ) { - emit fileSelected( d ); -} -void OFileSelector::internContextMenu() { - emit contextMenu(); -} -void OFileSelector::internChangedDir( const QString& s) { - emit dirSelected( s ); - cd(s ); -} -void OFileSelector::internChangedDir( const QDir& s) { - emit dirSelected( s ); -} -QPixmap OFileSelector::pixmap( const QString& s ) { - - return (*m_pixmaps)[s]; -} -OLister* OFileSelector::currentLister()const { - return m_lister; -} -void OFileSelector::initializeOldSelector() { - qWarning("initializeOldSelector"); - - delete m_select; - - // we need to initialize but keep the selected mimetype - /* we default not to show close and new buttons */ - QString mime = currentMimeType(); - qWarning("MimeType " + mime ); - m_select = new FileSelector( mime , - m_mainView, "fileselector", - FALSE, FALSE); - m_select->setCategorySelectVisible( FALSE ); - m_select->setTypeComboVisible( FALSE ); - - connect(m_select, SIGNAL(fileSelected( const DocLnk & ) ), - this, SLOT( slotFileBridgeSelected(const DocLnk & ) ) ); - connect(m_select, SIGNAL(closeMe() ), - this, SIGNAL(closeMe() ) ); - //connect to close me and other signals as well - m_mainView->setWidget( m_select ); -} -/* - * initialize the listview - * we will call fillList - * setLister - * with QString::null to get the default - * setView with either Files or All Files - * depending on Extended - */ -void OFileSelector::initializeView() { - setLister(QString::null); - fillList(); - if (m_selector == Extended ) { - setView( tr("List View") ); - }else{ - setView( tr("All List View") ); - } -} - diff --git a/libopie/ofileselector/ofileselector.h b/libopie/ofileselector/ofileselector.h deleted file mode 100644 index 76c3ced..0000000 --- a/libopie/ofileselector/ofileselector.h +++ b/dev/null @@ -1,492 +0,0 @@ -/* - This is based on code and ideas of - L. J. Potter ljp@llornkcor.com - Thanks a lot - - -               =. This file is part of the OPIE Project -             .=l. Copyright (c) 2002 Holger Freyther -           .>+-= - _;:,     .>    :=|. This library is free software; you can -.> <`_,   >  .   <= redistribute it and/or modify it under -:`=1 )Y*s>-.--   : the terms of the GNU Library General Public -.="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. -    .%`+i>       _;_. -    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU -..}^=.=       =       ; Library General Public License for more -++=   -.     .`     .: details. - :     =  ...= . :.=- - -.   .:....=;==+<; You should have received a copy of the GNU -  -_. . .   )=.  = Library General Public License along with -    --        :-=` this library; see the file COPYING.LIB. - If not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. - -*/ - -#ifndef opiefileselector_h -#define opiefileselector_h - -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -/** This is OPIEs FileDialog Widget. You can use it - * as a dropin replacement of the fileselector and - * or use any of the new features. - * This is also a complete FileSave and FileLoad widget - * If you look for a Dialog check OFileDialog - * - */ -class DocLnk; -class QCheckBox; -class QComboBox; -class QPushButton; -class QGridLayout; -class QLineEdit; -class QLabel; -class QWidgetStack; -class QHBoxLayout; -class QVBoxLayout; -class QPopupMenu; -class QFileInfo; -class QHBox; -class OFileView; -class OLister; -class OFileSelectorMain; -class OFileFactory; -// - -/* the mimetypes one name and a list of mimetypes */ -typedef QMap< QString, QStringList> MimeTypes; - -/** - * FIXME later - */ -struct OPopupMenuFactory { - OPopupMenuFactory() {} - -}; - - -/** - * Opie the default OFileSelector - * It features multiple views. - */ -class OFileSelector : public QWidget { - Q_OBJECT - - /* friends are evil but I don't want to make the - * methods public - */ - friend class OLister; - friend class OFileView; - public: - /** - * The mode of the file selector - * Either open, save, fileselector or dir browsing mode - * - */ - enum Mode {Open = 1, Save = 2, Fileselector = 4, Dir = 8 }; - - /** - * Selector. Either Normal for the one shipped with - * libqpe or Extended. for the Extended - * ExtendedAll also shows 'hidden' files - */ - enum Selector{Normal=0, Extended = 1, ExtendedAll = 2}; - - /** - * This is reserved for futrue views - */ - enum View { Dirs = 1, Files = 2, Tree = 4, Icon = 8 }; - - /** - * A c'tor which should be used for advanced mode - * @param wid the parent - * @param mode the Mode of the Selector - * @param selector the current View of the Selector - * @param dirName in which dir to start - * @param fileName a proposed filename - * @param mimetypes A list of mimetypes \ - * QString is for a identifier name like "Text files" - * the coresponding QStringList is used for the mimetypes - * if empty it'll fill the list of mimetypes depending - * on the content of the current directory - */ - - OFileSelector(QWidget *wid, int mode, int selector, - const QString &dirName, - const QString &fileName = QString::null, - const MimeTypes &mimetypes = MimeTypes() ); - - - /** - * This is a QPE compatible c'tor - */ - OFileSelector(const QString &mimeFilter, QWidget *parent, - const char *name, bool newVisible = TRUE, - bool closeVisible = FALSE ); - - ~OFileSelector(); - - // currently only for the FileSelector Mode - /* compability mode but only work - * with FileSelector - */ - void setNewVisible( bool /*b*/ ); - void setCloseVisible(bool /*b*/ ); - - // end file selector mode - // deprecated - void reread(); - // make sure not to leak please - const DocLnk *selected(); - // end deprecated - - /** - * @return if the toolbar is visible - */ - bool isToolbarVisible() const { return m_shTool; }; - - /** - * @return if the permissionBas is visible - */ - bool isPermissionBarVisible() const { return m_shPerm; }; - - /** - * @return if the lineEdit is visible - */ - bool isLineEditVisible()const { return m_shLne; }; - - /** - * if the chooser is visible - */ - bool isChooserVisible( )const { return m_shChooser; }; - - /** - * @return if the yesCancel Bar is visible - */ - bool isYesCancelVisible()const { return m_shYesNo; }; - - /** - * set Yes/Cancel visible - */ - void setYesCancelVisible( bool show ); - - /** - * set the toolbar visible - */ - void setToolbarVisible( bool show ); - - /** - * set the permissionBar to be visible - */ - void setPermissionBarVisible( bool show ); - - /** - * set the lineedit for file entering visible - */ - void setLineEditVisible(bool show) ; - - /** - * set the chooser is visible - */ - void setChooserVisible( bool chooser ); - - /** - * The permissionCheckbox - * - */ - QCheckBox* permissionCheckbox(); - - /** - * setPermission - */ - bool setPermission() const; - - /** - * set ther permission to bool - */ - void setPermissionChecked( bool check ); - - /** - * set the Selector Mode - */ - void setMode( int ); - - void setLister( const QString& name ); - void setView( const QString& all ); - /** - * whether or not to show dirs - */ - bool showDirs()const { return m_dir; } - - /** - * setShowDirs - */ - void setShowDirs(bool ); - - /** - * set CaseSensetive - */ - bool isCaseSensetive()const { return m_case; } - - /** - * set if to be case sensetive - */ - void setCaseSensetive(bool caSe ); - - /** - * @return if to show files - */ - bool showFiles()const { return m_files; }; - - /** - * set if files should be shown - */ - void setShowFiles(bool ); - - /** - * change dir to path - */ - bool cd(const QString &path ); - - - /** - * return the mode of the fileselector - */ - int mode()const { return m_mode; }; - - /** - * return the selector - */ - int selector()const { return m_selector; }; - - /** - * set the Selector - */ - void setSelector( int ); - - /** - * wether or not to show popups - */ - bool showPopup()const { return m_showPopup; }; - - /** - * set show popups - */ - void setShowPopup( bool pop ) { m_showPopup = pop; } - - /** - * set the popup factory - */ - void setPopupFactory( OPopupMenuFactory * ); - - /** - * reparse the current directory and updates - * the views + mimetypes - */ - void reparse(); // re reads the dir - - /** - * return the selected name - */ - QString selectedName( )const; - - /** - * for multiple selections return multiple - * filenames - */ - QStringList selectedNames()const; - - /** - * return the complete to the file - */ - QString selectedPath() const; - - /** - * return the completed paths - */ - QStringList selectedPaths() const; - - /** - * the current directory - */ - QString directory()const; - - /** - * fileCount - */ - int fileCount(); - - DocLnk selectedDocument()const; - - QValueList selectedDocuments()const; - - OFileView* currentView(); - OFileView* currentView()const; - OLister* currentLister()const; - OFileFactory* factory(); - int filter(); - int sorting(); - QPixmap pixmap( const QString& ); - /* our tool bar */ - QWidget* toolBar(); - - signals: - void fileSelected( const DocLnk & ); - void fileSelected( const QString & ); - void dirSelected(const QString &dir ); - void dirSelected( const QDir& ); - void closeMe(); - void ok(); - void cancel(); - void contextMenu(); - - private slots: - void slotOk(); - void slotCancel(); - void slotViewCheck(const QString & ); - void slotMimeCheck(const QString & ); - void slotLocationActivated(const QString & ); - void slotInsertLocationPath(const QString &, int); - void locationComboChanged(); - - private: - void init(); - void updateMimes(); - - - private: - - OFileFactory* m_fileFactory; - OFileSelectorMain* m_mainView; - OLister* m_lister; - QString m_listerName; - OFileView* m_fileView; - FileSelector* m_select; - int m_mode, m_selector; - QComboBox *m_location, - *m_mimeCheck, - *m_viewCheck; - - QPushButton *m_homeButton, - *m_docButton, - *m_hideButton, - *m_ok, *m_cancel; - QPushButton *m_reread, - *m_up, - *m_new, - *m_close; - QListView *m_View; - QCheckBox *m_checkPerm; - QWidget *m_pseudo; - QVBoxLayout *m_pseudoLayout; - - QString m_currentDir; - QString m_name; - - QMap m_mimetypes; - - QVBoxLayout *m_lay; - QGridLayout *m_Oselector; - - QHBox *m_boxToolbar; - QHBox *m_boxOk; - QHBox *m_boxName; - QHBox *m_boxView; - - - QLineEdit *m_edit; - QLabel *m_fnLabel; - - bool m_shClose : 1; - bool m_shNew : 1; - bool m_shTool : 1; - bool m_shPerm : 1; - bool m_shLne : 1; - bool m_shChooser : 1; - bool m_shYesNo : 1; - bool m_boCheckPerm : 1; - bool m_autoMime : 1; - bool m_case : 1; - bool m_dir : 1; - bool m_files : 1; - bool m_showPopup : 1; - bool m_showHidden : 1; - - void initVars(); - - void delItems(); - void initializeName(); - void initializeYes(); - void initializeChooser(); - void initializePerm(); - void initPics(); - bool compliesMime(const QString &path, - const QString &mime); - bool compliesMime(const QString& mime ); - /** - * Updates the QComboBox with the current mimetypes - */ - void updateMimeCheck(); - - void initializeOldSelector(); - void initToolbar(); - void initLocations(); - void initializeView(); // FIXME - void fillList(); - void initFactory(); - /** - * Returns the current mimetype - */ - QString currentMimeType()const; - class OFileSelectorPrivate; - OFileSelectorPrivate *d; - static QMap *m_pixmaps; - -private slots: - void slotFileSelected(const QString & ); // not really meant to be a slot - void slotFileBridgeSelected( const DocLnk & ); - // listview above - // popup below - virtual void slotDelete(); - virtual void cdUP(); - virtual void slotHome(); - virtual void slotDoc(); - virtual void slotNavigate( ); - - /* for OLister */ -private: - - /* for OFileView */ -private: - void internFileSelected( const QString& ); - void internFileSelected( const DocLnk& ); - void internContextMenu(); - void internChangedDir( const QString& ); - void internChangedDir( const QDir& ) ; - -}; - - -#endif - diff --git a/libopie/ofileselector/ofileselectoritem.cpp b/libopie/ofileselector/ofileselectoritem.cpp deleted file mode 100644 index 4ef8fe3..0000000 --- a/libopie/ofileselector/ofileselectoritem.cpp +++ b/dev/null @@ -1,58 +0,0 @@ -#include "ofileselectoritem.h" - -OFileSelectorItem::OFileSelectorItem( QListView*view, - const QPixmap& pix, - const QString& path, - const QString& date, - const QString& size, - const QString& dir, - bool isLocked, - const QString& extra, - bool isDir ) - : QListViewItem( view ) -{ - setPixmap( 0, pix ); - setText( 1, path ); - setText( 2, size ); - setText( 3, date ); - m_dir = isDir; - m_locked = isLocked; - m_dirStr = dir; - m_extra = extra; -} -OFileSelectorItem::~OFileSelectorItem() { -} -bool OFileSelectorItem::isLocked()const { - return m_locked; -} -QString OFileSelectorItem::directory()const { - return m_dirStr; -} -bool OFileSelectorItem::isDir()const { - return m_dir; -} -QString OFileSelectorItem::path() const { - return text(1); -} -QString OFileSelectorItem::key( int id, bool ) { - QString ke; - - if( id == 0 || id == 1 ){ // name - if( m_dir ){ - ke.append("0" ); - ke.append( text(1) ); - }else{ - ke.append("1" ); - ke.append( text(1) ); - } - }else if( id == 2 ){ // size - return text(2); - }else if( id == 3 ){ // date - return text(3); - } - - return ke; -} -QString OFileSelectorItem::extra()const { - return m_extra; -} diff --git a/libopie/ofileselector/ofileselectoritem.h b/libopie/ofileselector/ofileselectoritem.h deleted file mode 100644 index 81966ae..0000000 --- a/libopie/ofileselector/ofileselectoritem.h +++ b/dev/null @@ -1,35 +0,0 @@ -#ifndef OPIE_FILE_SELECTOR_ITEM_H -#define OPIE_FILE_SELECTOR_ITEM_H - -#include - -class OFileSelectorItem : public QListViewItem { -public: - OFileSelectorItem( QListView* view, - const QPixmap&, - const QString& path, - const QString& date, - const QString& size, - const QString& dir, - bool isLocked, - const QString& extra, - bool isDir = false); - ~OFileSelectorItem(); - bool isLocked() const; - QString directory()const; - bool isDir()const; - QString path()const; - QString key(int id, bool ); - QString extra()const; - -private: - bool m_locked : 1; - bool m_dir : 1; - QString m_dirStr; - QString m_extra; - - class Private; - Private* d; -}; - -#endif diff --git a/libopie/ofileselector/ofileselectormain.cpp b/libopie/ofileselector/ofileselectormain.cpp deleted file mode 100644 index dd3b08c..0000000 --- a/libopie/ofileselector/ofileselectormain.cpp +++ b/dev/null @@ -1,41 +0,0 @@ -#include -#include - -#include "ofileselectormain.h" - -OFileSelectorMain::OFileSelectorMain( QWidget* parent ) - : QWidget( parent ), m_tool(0) -{ - m_lay = 0; - init(); -} -OFileSelectorMain::~OFileSelectorMain() { - -} -void OFileSelectorMain::setToolbar( QWidget* tool ) { - delete m_tool; - m_tool = tool; - add(); -} -void OFileSelectorMain::setWidget( QWidget* wid ) { - static int i = 0; - m_stack->addWidget( wid, i ); - m_stack->raiseWidget( i ); - i++; -} -void OFileSelectorMain::add() { - qWarning("adding items "); - if (m_tool ) - m_lay->addWidget( m_tool, 0, 0 ); - -} -void OFileSelectorMain::init() { - delete m_lay; - - m_lay = new QGridLayout( this, 2, 1 ); - m_lay->setRowStretch( 0, 1 ); - m_lay->setRowStretch( 1, 500 ); - - m_stack = new QWidgetStack( this ); - m_lay->addWidget( m_stack, 1, 0 ); -} diff --git a/libopie/ofileselector/ofileselectormain.h b/libopie/ofileselector/ofileselectormain.h deleted file mode 100644 index b540b9a..0000000 --- a/libopie/ofileselector/ofileselectormain.h +++ b/dev/null @@ -1,23 +0,0 @@ -#ifndef OPIE_FILESELECTOR_MAIN_H -#define OPIE_FILESELECTOR_MAIN_H - -#include - -class QGridLayout; -class QWidgetStack; -class OFileSelectorMain : public QWidget { - Q_OBJECT -public: - OFileSelectorMain( QWidget* parent ); - ~OFileSelectorMain(); - void setToolbar( QWidget* tool ); - void setWidget( QWidget* view ); -private: - void init(); - void add(); - QGridLayout *m_lay; - QWidget* m_tool; - QWidgetStack *m_stack; -}; - -#endif diff --git a/libopie/ofileselector/ofileview.cpp b/libopie/ofileselector/ofileview.cpp deleted file mode 100644 index 4203ca3..0000000 --- a/libopie/ofileselector/ofileview.cpp +++ b/dev/null @@ -1,32 +0,0 @@ -#include - -#include - -#include "ofileselector.h" -#include "olister.h" -#include "ofileview.h" - - - -OFileView::OFileView( OFileSelector* sel) - : m_sel( sel ) -{ -} -OFileView::~OFileView() { -} -void OFileView::fileSelected( const QString& dir,const QString& file,const QString& extra ) { - m_sel->currentLister()->fileSelected( dir,file,extra ); -} -void OFileView::contextMenu() { - m_sel->internContextMenu(); -} -void OFileView::changedDir( const QString& s, const QString& file, const QString& extra) { - m_sel->currentLister()->changedDir( s, file,extra ); -} -OFileSelector* OFileView::selector() const { - return m_sel; -} -void OFileView::updateLine( const QString& str ) { - if (m_sel->m_shLne ) - m_sel->m_edit->setText( str ); -} diff --git a/libopie/ofileselector/ofileview.h b/libopie/ofileselector/ofileview.h deleted file mode 100644 index e84a3e1..0000000 --- a/libopie/ofileselector/ofileview.h +++ b/dev/null @@ -1,140 +0,0 @@ -/* -               =. This file is part of the OPIE Project -             .=l. Copyright (c) 2002 zecke -           .>+-= - _;:,     .>    :=|. This library is free software; you can -.> <`_,   >  .   <= redistribute it and/or modify it under -:`=1 )Y*s>-.--   : the terms of the GNU Library General Public -.="- .-=="i,     .._ License as published by the Free Software - - .   .-<_>     .<> Foundation; either version 2 of the License, -     ._= =}       : or (at your option) any later version. -    .%`+i>       _;_. -    .i_,=:_.      -`: PARTICULAR PURPOSE. See the GNU -..}^=.=       =       ; Library General Public License for more -++=   -.     .`     .: details. - :     =  ...= . :.=- - -.   .:....=;==+<; You should have received a copy of the GNU -  -_. . .   )=.  = Library General Public License along with -    --        :-=` this library; see the file COPYING.LIB. - If not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. - -*/ - -#ifndef ofileview_h -#define ofileview_h - -#include -#include -#include - -class QFileInfo; -class QDir; -class DocLnk; - -/** - * A OFileView is a specialised View for the - * OFileSelector - * With a View you can chage the user visible - * representation of a OFileLister - * OFileView is just a basic interface which helps you to - * write new views - */ -class OFileSelector; -class OFileView { -public: - OFileView( OFileSelector* ); - OFileView(); - virtual ~OFileView(); - - virtual void clear() = 0; - virtual void addFile(const QPixmap&, - const QString &mine, - QFileInfo *info, - const QString& extra = QString::null, - bool isSymlink = FALSE ) = 0; - - virtual void addFile(const QPixmap&, - const QString& mine, const QString& dir, - const QString& file, - const QString& extra = QString::null, - bool = FALSE ) = 0; - - virtual void addDir (const QPixmap&, - const QString &mine, - QFileInfo *info, - const QString& extra = QString::null, - bool isSymlink = FALSE ) = 0; - virtual void addDir (const QPixmap&, - const QString& mine, const QString& dir, - const QString& file, - const QString& extra = QString::null, - bool = FALSE) = 0; - - virtual void addSymlink(const QPixmap&, - const QString &mime, - QFileInfo *info, - const QString& extra = QString::null, - bool isSymlink = FALSE ) = 0; - - virtual void addSymlink(const QPixmap&, - const QString& mine, - const QString& path, - const QString& file, - const QString& extra = QString::null, - bool isSymlink = FALSE ) = 0; - - virtual void cd(const QString &path ) = 0; - virtual QWidget* widget() = 0; - - virtual QString selectedName()const = 0; - virtual QStringList selectedNames()const = 0; - virtual QString selectedPath()const = 0; - virtual QStringList selectedPaths()const = 0; - virtual QString selectedExtra()const = 0; - virtual int fileCount() = 0; - virtual void sort() =0; - -/*signals:*/ -protected: - - /** - * @param dir The dir name - * @param file The file name - * @param extra The extra information - */ - void fileSelected(const QString &dir, const QString& file, const QString& extra = QString::null); - void contextMenu(); - - /** - * - * @param dir The dir name - * @param file The file name - * @param extra The extra informations - */ - void changedDir(const QString &dir, const QString& file, const QString& extra = QString::null); - - /* updates the file name line of the FileSelector */ - void updateLine( const QString& ); - OFileSelector* selector()const; - -private: - OFileSelector* m_sel; -}; - -class OFileViewFactory { - public: - OFileViewFactory() {} ; - virtual ~OFileViewFactory() = 0; - - OFileView* newView(QWidget *parent, const char *name ); - QString name()const; -}; - - -#endif diff --git a/libopie/ofileselector/olister.cpp b/libopie/ofileselector/olister.cpp deleted file mode 100644 index aaaf6a2..0000000 --- a/libopie/ofileselector/olister.cpp +++ b/dev/null @@ -1,181 +0,0 @@ -#include -#include - -#include "olister.h" -#include "ofileview.h" -#include "opixmapprovider.h" -#include "ofileselector.h" - - -OLister::OLister( OFileSelector* view) - : m_view( view ), m_acc( 0l ) -{ - m_prov = new OPixmapProvider( view ); -} -OLister::~OLister() { - delete m_prov; -} -void OLister::setPixmapProvider( OPixmapProvider* prov ) { - delete m_prov; - m_prov = prov; -} -bool OLister::showFiles()const { - return m_view->showFiles(); -} -bool OLister::showDirs()const { - return m_view->showDirs(); -} -void OLister::addFile( const QString& mine, - QFileInfo* info, - const QString& extra, - bool isSymlink ) { - int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : - OPixmapProvider::File; - QPixmap pix = provider()->pixmap(t, mine, - info); - view()->currentView()->addFile( pix, - mine, - info, - extra, - isSymlink ); -} -void OLister::addFile( const QString& mine, - const QString& path, - const QString& file, - const QString& extra, - bool isSymlink ) { - int t = isSymlink ? OPixmapProvider::File | OPixmapProvider::Symlink : - OPixmapProvider::File; - - QPixmap pix = provider()->pixmap(t, mine, path, file ); - view()->currentView()->addFile( pix, - mine, - path, - file, - extra, - isSymlink ); -} -void OLister::addDir( const QString& mine, - QFileInfo* info, - const QString& extra, - bool isSymlink ) { - int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : - OPixmapProvider::Dir; - QPixmap pix = provider()->pixmap(t, mine, info ); - view()->currentView()->addDir( pix, - mine, - info, - extra, - isSymlink ); -} -void OLister::addDir( const QString& mine, - const QString& path, - const QString& dir, - const QString& extra, - bool isSymlink ) { - - int t = isSymlink ? OPixmapProvider::Dir | OPixmapProvider::Symlink : - OPixmapProvider::Dir; - QPixmap pix = provider()->pixmap(t, mine, path, dir ); - - view()->currentView()->addDir( pix, - mine, - path, - dir, - extra, - isSymlink ); -} -void OLister::addSymlink( const QString& mine, - QFileInfo* info, - const QString& extra, - bool isSymlink ) { - QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, info ); - view()->currentView()->addSymlink( pix, - mine, - info, - extra, - isSymlink ); -} -void OLister::addSymlink( const QString& mine, - const QString& path, - const QString& name, - const QString& extra, - bool isSymlink ) { - QPixmap pix = provider()->pixmap( OPixmapProvider::Symlink, mine, - path, name ); - view()->currentView()->addSymlink( pix, - mine, - path, - name, - extra, - isSymlink ); -} -OFileSelector* OLister::view() { - return m_view; -} -OFileSelector* OLister::view()const { - return m_view; -} -OPixmapProvider* OLister::provider() { - return m_prov; -} -bool OLister::compliesMime( const QString& mime ) { - return view()->compliesMime( mime ); -} -void OLister::internFileSelected( const QString& dir ) { - view()->internFileSelected( dir ); -} -void OLister::internChangedDir( const QString& dir ) { - view()->internChangedDir( dir ); -} -OListerCmbAccess* OLister::comboBox() { - if (!m_acc ) - m_acc = new OListerCmbAccess( view()->m_location ); - - return m_acc; -} - - -OListerCmbAccess::OListerCmbAccess(QComboBox* cmb ) - : m_cmb( cmb ) -{} -OListerCmbAccess::~OListerCmbAccess() { -} -void OListerCmbAccess::clear() { - if ( m_cmb ) - m_cmb->clear(); -} -void OListerCmbAccess::setCurrentItem( const QString& add, bool FORCE_ADD) { - if ( !m_cmb ) return; - - - int c = m_cmb->count(); - for ( int i = 0; i < m_cmb->count(); i++ ) { - if ( m_cmb->text(i) == add ) { - m_cmb->setCurrentItem( i ); - return; - } - } - if (!FORCE_ADD ) return; - - - m_cmb->insertItem(add ); - m_cmb->setCurrentItem( c ); -} -void OListerCmbAccess::insert( const QString& str ) { - if ( m_cmb ) - m_cmb->insertItem( str ); -} -QString OListerCmbAccess::currentText()const { - QString str; - if (m_cmb ) - str = m_cmb->currentText(); - - return str; -} -QString OLister::lineEdit()const { - if ( view()->m_shLne ) - return view()->m_edit->text(); - - return QString::null; -} diff --git a/libopie/ofileselector/olister.h b/libopie/ofileselector/olister.h deleted file mode 100644 index 4adb9f8..0000000 --- a/libopie/ofileselector/olister.h +++ b/dev/null @@ -1,144 +0,0 @@ -#ifndef OPIE_FILE_LISTER_H -#define OPIE_FILE_LISTER_H - -#include -#include -#include -#include - -class QComboBox; -class OPixmapProvider; -class OFileSelector; - -class OListerCmbAccess; -/** - * lister is something like KIO but very - * very basic and currently only for - * populating our views. - * This is a base class which needs to be implemented. - * @see OLocalLister for a filesystem based implementation - */ - -class OLister { -public: - OLister( OFileSelector* ); - virtual ~OLister(); - - /** - * if path == QString::null reread current dir - */ - virtual void reparse(const QString& path = QString::null ) = 0; - - /** - * return a list of available mimetypes - */ - virtual QMap mimeTypes( const QString& dir ) = 0; - void setPixmapProvider( OPixmapProvider* ); - - - /* some way a slot */ - virtual void fileSelected( const QString& dir, const QString& file, const QString& extra ) = 0; - virtual void changedDir( const QString& dir, const QString& file, const QString& extra ) = 0; - virtual QString selectedName()const = 0; - virtual QStringList selectedNames()const = 0; -protected: - /** - * I hate too big classes - * this is a way to group - * access to a ComboBox - * which might exist or - * not in a secure way - */ - OListerCmbAccess* comboBox(); - - bool showFiles()const; - bool showDirs()const; - bool compliesMime( const QString& mime ); - void addFile( const QString& mine, - QFileInfo*, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - - void addFile( const QString& mine, - const QString& path, - const QString& file, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - void addDir( const QString& mine, - QFileInfo*, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - void addDir( const QString& mine, - const QString& path, - const QString& dir, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - void addSymlink( const QString& mine, - QFileInfo* info, - const QString& extra = QString::null, - bool isSymlink = FALSE); - void addSymlink( const QString& mine, - const QString& path, - const QString& name, - const QString& extra = QString::null, - bool isSymlink = FALSE ); - OFileSelector* view(); - OFileSelector* view()const; - OPixmapProvider* provider(); - void internFileSelected( const QString& file ); - void internChangedDir( const QString& dir ); - - /** - * try to take - * the text from the mainwindows - * lineedit - * if it's not available QString::null - * will be returned - */ - QString lineEdit()const; -private: - OFileSelector* m_view; - OPixmapProvider* m_prov; - OListerCmbAccess* m_acc; - - class Private; - Private *d; -}; - -class OListerCmbAccess { - friend class OLister; -public: - OListerCmbAccess( QComboBox* = 0l); - ~OListerCmbAccess(); - - /** - * clears the combobox - */ - void clear(); - - /** - * set's @param add to be the current Item - * if the item is not present it'll be removed - */ - void setCurrentItem( const QString& add, bool FORECE_ADD = TRUE ); - - /** - * inserts the the String at - * a non predictable position... The position is determined - * by the QComboBox code - */ - void insert( const QString& ); - - /** - * - */ - QString currentText()const; - -private: - class Private; - Private* d; - QComboBox* m_cmb; - -}; - -#endif diff --git a/libopie/ofileselector/olocallister.cpp b/libopie/ofileselector/olocallister.cpp deleted file mode 100644 index 4d36d64..0000000 --- a/libopie/ofileselector/olocallister.cpp +++ b/dev/null @@ -1,150 +0,0 @@ -#include -#include -#include - -#include - -#include "ofileselector.h" -#include "ofileview.h" -#include "olocallister.h" - -OLocalLister::OLocalLister( OFileSelector* file ) - : OLister( file ) -{ - m_dir = QDir::homeDirPath(); -} -OLocalLister::~OLocalLister() { -} - -QMap OLocalLister::mimeTypes( const QString& curDir ) { - QMap mimes; - - // let's find possible mimetypes - QDir dir( curDir ); - dir.setFilter( QDir::Files | QDir::Readable ); - dir.setSorting( QDir::Size ); - - const QFileInfoList *list = dir.entryInfoList(); - QFileInfoListIterator it( *list ); - QFileInfo *fi; - - while( (fi=it.current() ) ) { - /* skip .desktop */ - if( fi->extension() == QString::fromLatin1("desktop") ){ - ++it; - continue; - } - MimeType type( fi->absFilePath() ); - - if( !mimes.contains( type.id() ) ){ - mimes.insert( type.id(), type.id() ); - } - - ++it; - } - - return mimes; -} -/** - * FIXME mimecheck - * use mime check for that - * filter dirs - * filter filters - * filter files - * filter mimetypes - */ -void OLocalLister::reparse( const QString& pa ) { - if (!pa.isEmpty() ) - m_dir = pa; - - QString currentMimeType; - QDir dir( m_dir ); - - dir.setSorting( view()->sorting() ); - dir.setFilter( view()->filter() ); - - - const QFileInfoList *list = dir.entryInfoList(); - QFileInfoListIterator it( *list ); - QFileInfo *fi; - - while( (fi=it.current() ) ){ - - if( fi->fileName() == QString::fromLatin1("..") || - fi->fileName() == QString::fromLatin1(".") ){ - ++it; - continue; - } - if( fi->isSymLink() ){ - QString file = fi->dirPath( true ) + "/" + fi->readLink(); - /* - * 5 tries to prevent dos attack - */ - for( int i = 0; i<=4; i++) { - QFileInfo info( file ); - if( !info.exists() ){ - addSymlink( currentMimeType, fi, QString::null, TRUE ); - break; - }else if( info.isDir() ){ - if (!showDirs() ) - break; - - addDir( currentMimeType, fi, QString::null, - TRUE ); - break; - }else if( info.isFile() ){ - /* if not show files skip it */ - if (!showFiles() ) - break; - - /* check if we comply to the mimetype */ - MimeType type( info.absFilePath() ); - if (compliesMime( type.id() ) ) - addFile( currentMimeType, fi, QString::null, TRUE ); - - break; - }else if( info.isSymLink() ){ - file = info.dirPath(true ) + "/" + info.readLink() ; - break; - }else if( i == 4){ - addSymlink( currentMimeType, fi ); - } - } - - }else if( fi->isDir() ){ - if (showDirs() ) - addDir( currentMimeType, fi ); - }else if( fi->isFile() ){ - if ( showFiles() ) - addFile( currentMimeType, fi ); - } - ++it; - } // of while loop -} -/* more accepting it code */ -void OLocalLister::fileSelected( const QString& dir, const QString& file, const QString& ) { - internFileSelected( dir + "/" + file ); -} -void OLocalLister::changedDir( const QString& dir, const QString& file, const QString& ) { - internChangedDir( dir + "/" + file ); -} -/* - * assemble the the Url now - */ -QString OLocalLister::selectedName()const { - QString str = m_dir; - QString name = lineEdit(); - - if ( name.isEmpty() ) - name = view()->currentView()->selectedName(); - - str += "/" + name; - - return str; -} -QStringList OLocalLister::selectedNames()const { - QStringList list; - list << selectedName(); - - return list; -} diff --git a/libopie/ofileselector/olocallister.h b/libopie/ofileselector/olocallister.h deleted file mode 100644 index 0cdf51f..0000000 --- a/libopie/ofileselector/olocallister.h +++ b/dev/null @@ -1,21 +0,0 @@ -#ifndef OPIE_LOCAL_LISTER -#define OPIE_LOCAL_LISTER - -#include "olister.h" - -class OLocalLister : public OLister { -public: - OLocalLister( OFileSelector* ); - ~OLocalLister(); - void reparse( const QString& path ); - QMap mimeTypes(const QString& dir ); - void fileSelected( const QString& dir, const QString& file, const QString& ); - void changedDir( const QString& dir, const QString& file,const QString& ); - QString selectedName()const; - QStringList selectedNames()const; - -private: - QString m_dir; -}; - -#endif diff --git a/libopie/ofileselector/opixmapprovider.cpp b/libopie/ofileselector/opixmapprovider.cpp deleted file mode 100644 index b363e01..0000000 --- a/libopie/ofileselector/opixmapprovider.cpp +++ b/dev/null @@ -1,83 +0,0 @@ -#include - -#include -#include - -#include "opixmapprovider.h" - - - -OPixmapProvider::OPixmapProvider( OFileSelector* sel ) - : m_sel( sel ){ -} -OPixmapProvider::~OPixmapProvider() { -} -QPixmap OPixmapProvider::pixmap( int t, const QString& , - QFileInfo* info, bool isL ) { - QPixmap pix; - bool sy = t & Symlink ? true : false; - switch (t ) { - case File: - pix = file( info, sy, isL ); - break; - case Dir: - pix = dir( info, sy, isL ); - break; - case Symlink: - pix = sym( info, isL ); - break; - } - return pix; - -} -QPixmap OPixmapProvider::pixmap( int t, const QString& mime, - const QString& dir, const QString& file, - bool isL) { - QFileInfo *inf = new QFileInfo( dir + "/" + file ); - QPixmap pix = pixmap( t, mime, inf, isL ); - delete inf; - return pix; -} -OFileSelector* OPixmapProvider::selector() { - return m_sel; -} -QPixmap OPixmapProvider::file( QFileInfo* inf, bool , bool ) { - MimeType type( inf->absFilePath() ); - QPixmap pix = type.pixmap(); - - if ( pix.isNull() ) - pix = Resource::loadPixmap( "UnknownDocument-14"); - - if ( (selector()->mode() == OFileSelector::Open && - !inf->isReadable() ) || - (selector()->mode() == OFileSelector::Save && - !inf->isWritable() ) ) { - pix = Resource::loadPixmap( "locked" ); - } - return pix; - -} -QPixmap OPixmapProvider::dir( QFileInfo* inf, bool sym, bool ) { - QPixmap pix; - /* - * look at selector()->mode() and determine - * if a dir is locked - */ - if ( (selector()->mode() == OFileSelector::Open && - !inf->isReadable() ) || - (selector()->mode() == OFileSelector::Save && - !inf->isWritable() ) ) { - if ( sym ) - pix = selector()->pixmap("symlinkedlocked"); - else - pix = Resource::loadPixmap("lockedfolder"); - }else { - pix = sym ? selector()->pixmap("lockedfolder") : - Resource::loadPixmap("folder"); - - } - return pix; -} -QPixmap OPixmapProvider::sym( QFileInfo* , bool ) { - return Resource::loadPixmap("opie/symlink"); -} diff --git a/libopie/ofileselector/opixmapprovider.h b/libopie/ofileselector/opixmapprovider.h deleted file mode 100644 index 2165fdb..0000000 --- a/libopie/ofileselector/opixmapprovider.h +++ b/dev/null @@ -1,41 +0,0 @@ -#ifndef OPIE_PIXMPAP_PROVIDER -#define OPIE_PIXMPAP_PROVIDER - -#include - -#include "ofileselector.h" - -/** - * This is a basic interface for a Pixmap provider - * it provides pixmaps for a URL - * So the OLocalLister provides mimetype icons - */ -class QFileInfo; -class OPixmapProvider { -public: - /* you can or these - * but File | Dir would be insane ;) - */ - enum Type { File = 0, Dir = 1, Symlink = 2 }; - OPixmapProvider( OFileSelector* sel ); - virtual ~OPixmapProvider(); - - virtual QPixmap pixmap( int t, const QString& mime, QFileInfo*, - bool isLocked = FALSE ); - virtual QPixmap pixmap( int t, const QString& mime, - const QString& dir, const QString& file, - bool isLocked = FALSE ); - -protected: - OFileSelector* selector(); -private: - QPixmap file( QFileInfo*, - bool sym, bool is ); - QPixmap dir ( QFileInfo*, - bool sym, bool is ); - QPixmap sym ( QFileInfo*, - bool is ); - OFileSelector* m_sel; -}; - -#endif -- cgit v0.9.0.2