From 2599e347d9444cfa6282fec9f2bfb9df4743d6d2 Mon Sep 17 00:00:00 2001 From: zecke Date: Thu, 11 Apr 2002 20:30:22 +0000 Subject: OFileSelector const QStringList -> const QSTringList& OFileDialog initial version the layout is broken but don't ask me. I played with the parent played with manual relayouting. Currently the setYesCancelVisisble crashes but that's ok for now OFileDialog provides static methods for OpenFileName, SaveFileName and DIrFileName Multiple selection will follow Maybe a dwarf fixes the problems for me overnight --- (limited to 'libopie/ofiledialog.cc') diff --git a/libopie/ofiledialog.cc b/libopie/ofiledialog.cc new file mode 100644 index 0000000..92b0d0a --- a/dev/null +++ b/libopie/ofiledialog.cc @@ -0,0 +1,110 @@ +/* +               =. 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 QStringList &mimetypes ) + : QDialog( wid, "OFileDialog", true ) +{ + QVBoxLayout *lay = new QVBoxLayout(this); + + file = new OFileSelector(0 , mode, selector, + dirName, fileName, + mimetypes ); + 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 &) ) ); + showMaximized(); + 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 QStringList &mimes, + QWidget *wid, + const QString &caption ) +{ + QString ret; + OFileDialog dlg( caption.isEmpty() ? tr("Open") : caption, + wid, OFileSelector::OPEN, selector, startDir, file, mimes); + if( dlg.exec() ) + ret = dlg.fileName(); + + return ret; +} +QString OFileDialog::getSaveFileName(int selector, + const QString &startDir, + const QString &file, + const QStringList &mimes, + QWidget *wid, + const QString &caption ) +{ + QString ret; + OFileDialog dlg( caption.isEmpty() ? tr("Save") : caption, + wid, OFileSelector::SAVE, selector, startDir, file, mimes); + if( dlg.exec() ) + ret = dlg.fileName(); + + return ret; +} + +void OFileDialog::slotFileSelected(const QString & ) +{ + accept(); +} +void OFileDialog::slotDirSelected(const QString & ) +{ + // if mode + //accept(); +} -- cgit v0.9.0.2