diff options
Diffstat (limited to 'sip/tqt/tqfiledialog.sip')
-rw-r--r-- | sip/tqt/tqfiledialog.sip | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/sip/tqt/tqfiledialog.sip b/sip/tqt/tqfiledialog.sip new file mode 100644 index 0000000..920a218 --- /dev/null +++ b/sip/tqt/tqfiledialog.sip @@ -0,0 +1,224 @@ +// This is the SIP interface definition for TQFileDialog, TQFileIconProvider and +// TQFilePreview. +// +// Copyright (c) 2007 +// Riverbank Computing Limited <info@riverbankcomputing.co.uk> +// +// This file is part of PyTQt. +// +// This copy of PyTQt is free software; you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by the Free +// Software Foundation; either version 2, or (at your option) any later +// version. +// +// PyTQt is supplied in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +// details. +// +// You should have received a copy of the GNU General Public License along with +// PyTQt; see the file LICENSE. If not, write to the Free Software Foundation, +// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +%ExportedDoc +<Sect2><Title>TQFileDialog</Title> +<Para> +<Literal>TQFileDialog</Literal> is fully implemented. +</Para> +</Sect2> + +<Sect2><Title>TQFileIconProvider</Title> +<Para> +<Literal>TQFileIconProvider</Literal> is fully implemented. +</Para> +</Sect2> + +<Sect2><Title>TQFilePreview</Title> +<Para> +<Literal>TQFilePreview</Literal> is fully implemented. However it cannot be +used from Python in the same way as it is used from C++ because PyTQt does not +support multiple inheritance involving more than one wrapped class. A trick +that seems to work is to use composition rather than inheritance as in the +following code fragment. +</Para> +<ProgramListing> +class FilePreview(TQFilePreview): + pass + +class Preview(TQLabel): + def __init__(self, parent=None): + TQLabel.__init__(self, parent) + self.preview = FilePreview() + self.preview.previewUrl = self.previewUrl +</ProgramListing> +<Para> +Note that TQFilePreview cannot be instantiated directly because it is abstract. +Thanks to Hans-Peter Jansen for this trick. +</Para> +</Sect2> +%End + + +%If (TQt_FILEDIALOG) + +class TQFileIconProvider : TQObject +{ +%TypeHeaderCode +#include <tqfiledialog.h> +%End + +public: + TQFileIconProvider(TQObject * /TransferThis/ = 0,const char * = 0); + + virtual const TQPixmap *pixmap(const TQFileInfo &); + +private: + TQFileIconProvider(const TQFileIconProvider &); +}; + + +class TQFilePreview +{ +%TypeHeaderCode +#include <tqfiledialog.h> +%End + +public: + TQFilePreview(); + + virtual void previewUrl(const TQUrl &) = 0; +}; + + +class TQFileDialog : TQDialog +{ +%TypeHeaderCode +#include <tqfiledialog.h> +%End + +public: + TQFileDialog(const TQString &,const TQString & = TQString::null, + TQWidget * /TransferThis/ = 0,const char * = 0,bool = 0); + TQFileDialog(TQWidget * /TransferThis/ = 0,const char * = 0,bool = 0); + + static TQString getOpenFileName(const TQString & = TQString::null, + const TQString & = TQString::null, + TQWidget * = 0,const char * = 0, + const TQString & = TQString::null, + TQString * = 0,bool = 1) /ReleaseGIL/; + + static TQString getSaveFileName(const TQString & = TQString::null, + const TQString & = TQString::null, + TQWidget * = 0,const char * = 0, + const TQString & = TQString::null, + TQString * = 0,bool = 1) /ReleaseGIL/; + + static TQString getExistingDirectory(const TQString & = TQString::null, + TQWidget * = 0,const char * = 0, + const TQString & = TQString::null, + bool = 1,bool = 1) /ReleaseGIL/; + + static TQStringList getOpenFileNames(const TQString & = TQString::null, + const TQString & = TQString::null, + TQWidget * = 0,const char * = 0, + const TQString & = TQString::null, + TQString * = 0, + bool = 1) /ReleaseGIL/; + + static void setIconProvider(TQFileIconProvider *); + static TQFileIconProvider *iconProvider(); + + TQString selectedFile() const; + TQString selectedFilter() const; + virtual void setSelectedFilter(const TQString &); + virtual void setSelectedFilter(int); + + void setSelection(const TQString &); + + void selectAll(bool); + + TQStringList selectedFiles() const; + + TQString dirPath() const; + + void setDir(const TQDir &); + const TQDir* dir() const; + + void setShowHiddenFiles(bool); + bool showHiddenFiles() const; + + void rereadDir() /ReleaseGIL/; + void resortDir(); + + enum Mode { + AnyFile, + ExistingFile, + Directory, + ExistingFiles, + DirectoryOnly + }; + + void setMode(Mode); + Mode mode() const; + + enum ViewMode { + Detail, + List + }; + + enum PreviewMode { + NoPreview, + Contents, + Info + }; + + void setViewMode(ViewMode); + ViewMode viewMode() const; + void setPreviewMode(PreviewMode); + PreviewMode previewMode() const; + + bool eventFilter(TQObject *,TQEvent *); + + bool isInfoPreviewEnabled() const; + bool isContentsPreviewEnabled() const; + void setInfoPreviewEnabled(bool); + void setContentsPreviewEnabled(bool); + + void setInfoPreview(TQWidget *,TQFilePreview *); + void setContentsPreview(TQWidget *,TQFilePreview *); + + TQUrl url() const; + + void addFilter(const TQString &); + +public slots: + void done(int); + void setDir(const TQString &); + void setUrl(const TQUrlOperator &); + void setFilter(const TQString &); + void setFilters(const TQString &); +// void setFilters(const char **); + void setFilters(const TQStringList &); + +signals: + void fileHighlighted(const TQString &); + void fileSelected(const TQString &); + void filesSelected(const TQStringList &); + void dirEntered(const TQString &); + void filterSelected(const TQString &); + +protected: + void resizeEvent(TQResizeEvent *); + void keyPressEvent(TQKeyEvent *); + + void addWidgets(TQLabel *,TQWidget *,TQPushButton *); + void addToolButton(TQButton *,bool = 0); + void addLeftWidget(TQWidget *); + void addRightWidget(TQWidget *); + +private: + TQFileDialog(const TQFileDialog &); +}; + +%End |