diff options
Diffstat (limited to 'kio/kfile/kdiroperator.h')
-rw-r--r-- | kio/kfile/kdiroperator.h | 950 |
1 files changed, 0 insertions, 950 deletions
diff --git a/kio/kfile/kdiroperator.h b/kio/kfile/kdiroperator.h deleted file mode 100644 index 3dbd42759..000000000 --- a/kio/kfile/kdiroperator.h +++ /dev/null @@ -1,950 +0,0 @@ -// -*- c++ -*- -/* This file is part of the KDE libraries - Copyright (C) 1999 Stephan Kulow <[email protected]> - 2000,2001 Carsten Pfeiffer <[email protected]> - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed 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 - 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., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ -#ifndef KDIROPERATOR_H_ -#define KDIROPERATOR_H_ - -#include <tqwidget.h> -#include <tqptrstack.h> - -#include <kaction.h> -#include <kcompletion.h> -#include <kdirlister.h> -#include <kfileview.h> -#include <kfileitem.h> -#include <kfile.h> - -class TQPopupMenu; -class TQTimer; - -class KAction; -class KDirLister; -class KToggleAction; -class KActionSeparator; -class KActionMenu; -class TQWidgetStack; -class KProgress; -namespace TDEIO { - class CopyJob; - class DeleteJob; -} - -/** - * This widget works as a network transparent filebrowser. You specify a URL - * to display and this url will be loaded via KDirLister. The user can - * browse through directories, highlight and select files, delete or rename - * files. - * - * It supports different views, e.g. a detailed view (see KFileDetailView), - * a simple icon view (see KFileIconView), a combination of two views, - * separating directories and files ( KCombiView). - * - * Additionally, a preview view is available (see KFilePreview), which can - * show either a simple or detailed view and additionally a preview widget - * (see setPreviewWidget()). KImageFilePreview is one implementation - * of a preview widget, that displays previews for all supported filetypes - * utilizing TDEIO::PreviewJob. - * - * Currently, those classes don't support Drag&Drop out of the box -- there - * you have to use your own view-classes. You can use some DnD-aware views - * from Bj�n Sahlstr� <[email protected]> until they will be integrated - * into this library. See http://devel-home.kde.org/~pfeiffer/DnD-classes.tar.gz - * - * This widget is the one used in the KFileDialog. - * - * Basic usage is like this: - * \code - * KDirOperator *op = new KDirOperator( KURL( "file:/home/gis" ), this ); - * // some signals you might be interested in - * connect(op, TQT_SIGNAL(urlEntered(const KURL&)), - * TQT_SLOT(urlEntered(const KURL&))); - * connect(op, TQT_SIGNAL(fileHighlighted(const KFileItem *)), - * TQT_SLOT(fileHighlighted(const KFileItem *))); - * connect(op, TQT_SIGNAL(fileSelected(const KFileItem *)), - * TQT_SLOT(fileSelected(const KFileItem *))); - * connect(op, TQT_SIGNAL(finishedLoading()), - * TQT_SLOT(slotLoadingFinished())); - * - * op->readConfig( TDEGlobal::config(), "Your KDiroperator ConfigGroup" ); - * op->setView(KFile::Default); - * \endcode - * - * This will create a childwidget of 'this' showing the directory contents - * of /home/gis in the default-view. The view is determined by the readConfig() - * call, which will read the KDirOperator settings, the user left your program - * with (and which you saved with op->writeConfig()). - * - * @short A widget for displaying files and browsing directories. - * @author Stephan Kulow <[email protected]>, Carsten Pfeiffer <[email protected]> - */ -class TDEIO_EXPORT KDirOperator : public TQWidget -{ - Q_OBJECT - - public: - /** - * The various action types. These values can be or'd together - * @since 3.1 - */ - enum ActionTypes { SortActions = 1, - ViewActions = 2, - NavActions = 4, - FileActions = 8, - AllActions = 15 }; - /** - * Constructs the KDirOperator with no initial view. As the views are - * configurable, call readConfig() to load the user's configuration - * and then setView to explicitly set a view. - * - * This constructor doesn't start loading the url, setView will do it. - */ - KDirOperator(const KURL& urlName = KURL(), - TQWidget *parent = 0, const char* name = 0); - /** - * Destroys the KDirOperator. - */ - virtual ~KDirOperator(); - - /** - * Enables/disables showing hidden files. - */ - // ### KDE4: make virtual - void setShowHiddenFiles ( bool s ) { showHiddenAction->setChecked( s ); } - - /** - * @returns true when hidden files are shown or false otherwise. - */ - bool showHiddenFiles () const { return showHiddenAction->isChecked(); } - - /** - * Stops loading immediately. You don't need to call this, usually. - */ - void close(); - /// Reimplemented to avoid "hidden virtual" warnings - virtual bool close( bool alsoDelete ) { return TQWidget::close( alsoDelete ); } - - /** - * Sets a filter like "*.cpp *.h *.o". Only files matching that filter - * will be shown. Call updateDir() to apply it. - * - * @see KDirLister::setNameFilter - * @see nameFilter - */ - void setNameFilter(const TQString& filter); - - /** - * @returns the current namefilter. - * @see setNameFilter - */ - const TQString& nameFilter() const { return dir->nameFilter(); } - - /** - * Sets a list of mimetypes as filter. Only files of those mimetypes - * will be shown. - * - * Example: - * \code - * TQStringList filter; - * filter << "text/html" << "image/png" << "inode/directory"; - * dirOperator->setMimefilter( filter ); - * \endcode - * - * Node: Without the mimetype inode/directory, only files would be shown. - * Call updateDir() to apply it. - * - * @see KDirLister::setMimeFilter - * @see mimeFilter - */ - void setMimeFilter( const TQStringList& mimetypes ); - - /** - * @returns the current mime filter. - */ - TQStringList mimeFilter() const { return dir->mimeFilters(); } - - /** - * Clears both the namefilter and mimetype filter, so that all files and - * directories will be shown. Call updateDir() to apply it. - * - * @see setMimeFilter - * @see setNameFilter - */ - void clearFilter(); - - /** - * @returns the current url - */ - KURL url() const; - - /** - * Sets a new url to list. - * @param clearforward specifies whether the "forward" history should be cleared. - * @param url the URL to set - */ - // ### KDE4: make virtual - void setURL(const KURL& url, bool clearforward); - - /** - * Clears the current selection and attempts to set @p filename - * the current file. filename is just the name, no path or url. - */ - void setCurrentItem( const TQString& filename ); - - /** - * Sets a new KFileView to be used for showing and browsing files. - * Note: this will read the current url() to fill the view. - * - * @see KFileView - * @see KFileIconView - * @see KFileDetailView - * @see KCombiView - * @see view - */ - // ### KDE4: make virtual - void setView(KFileView *view); - - /** - * @returns the currently used view. - * @see setView - */ - KFileView * view() const { return m_fileView; } - - /** - * Returns the widget of the current view. 0L if there is no view/widget. - * (KFileView itself is not a widget.) - */ - TQWidget * viewWidget() const { return m_fileView ? m_fileView->widget() : 0L; } - - /** - * Sets one of the predefined fileviews - * @see KFile::FileView - */ - // ### KDE4: make virtual - void setView(KFile::FileView view); - - /** - * Sets the way to sort files and directories. - */ - void setSorting( TQDir::SortSpec ); - - /** - * @returns the current way of sorting files and directories - */ - TQDir::SortSpec sorting() const { return mySorting; } - - /** - * @returns true if we are displaying the root directory of the current url - */ - bool isRoot() const { return url().path() == TQChar('/'); } - - /** - * @returns the object listing the directory - */ - KDirLister *dirLister() const { return dir; } - - /** - * @returns the progress widget, that is shown during directory listing. - * You can for example reparent() it to put it into a statusbar. - */ - KProgress * progressBar() const; - - /** - * Sets the listing/selection mode for the views, an OR'ed combination of - * @li File - * @li Directory - * @li Files - * @li ExistingOnly - * @li LocalOnly - * - * You cannot mix File and Files of course, as the former means - * single-selection mode, the latter multi-selection. - */ - // ### KDE4: make virtual - void setMode( KFile::Mode m ); - /** - * @returns the listing/selection mode. - */ - KFile::Mode mode() const; - - /** - * Sets a preview-widget to be shown next to the file-view. - * The ownership of @p w is transferred to KDirOperator, so don't - * delete it yourself! - */ - // ### KDE4: make virtual - void setPreviewWidget(const TQWidget *w); - - /** - * @returns a list of all currently selected items. If there is no view, - * then 0L is returned. - */ - const KFileItemList * selectedItems() const { - return ( m_fileView ? m_fileView->selectedItems() : 0L ); - } - - /** - * @returns true if @p item is currently selected, or false otherwise. - */ - inline bool isSelected( const KFileItem *item ) const { - return ( m_fileView ? m_fileView->isSelected( item ) : false ); - } - - /** - * @returns the number of directories in the currently listed url. - * Returns 0 if there is no view. - */ - int numDirs() const; - - /** - * @returns the number of files in the currently listed url. - * Returns 0 if there is no view. - */ - int numFiles() const; - - /** - * @returns a KCompletion object, containing all filenames and - * directories of the current directory/URL. - * You can use it to insert it into a KLineEdit or KComboBox - * Note: it will only contain files, after prepareCompletionObjects() - * has been called. It will be implicitly called from makeCompletion() - * or makeDirCompletion() - */ - KCompletion * completionObject() const { - return const_cast<KCompletion *>( &myCompletion ); - } - - /** - * @returns a KCompletion object, containing only all directories of the - * current directory/URL. - * You can use it to insert it into a KLineEdit or KComboBox - * Note: it will only contain directories, after - * prepareCompletionObjects() has been called. It will be implicitly - * called from makeCompletion() or makeDirCompletion() - */ - KCompletion *dirCompletionObject() const { - return const_cast<KCompletion *>( &myDirCompletion ); - } - - /** - * an accessor to a collection of all available Actions. The actions - * are static, they will be there all the time (no need to connect to - * the signals KActionCollection::inserted() or removed(). - * - * There are the following actions: - * - * @li popupMenu : an ActionMenu presenting a popupmenu with all actions - * @li up : changes to the parent directory - * @li back : goes back to the previous directory - * @li forward : goes forward in the history - * @li home : changes to the user's home directory - * @li reload : reloads the current directory - * @li separator : a separator - * @li mkdir : opens a dialog box to create a directory - * @li delete : deletes the selected files/directories - * @li sorting menu : an ActionMenu containing all sort-options - * @li by name : sorts by name - * @li by date : sorts by date - * @li by size : sorts by size - * @li reversed : reverses the sort order - * @li dirs first : sorts directories before files - * @li case insensitive : sorts case insensitively - * @li view menu : an ActionMenu containing all actions concerning the view - * @li short view : shows a simple fileview - * @li detailed view : shows a detailed fileview (dates, permissions ,...) - * @li show hidden : shows hidden files - * @li separate dirs : shows directories in a separate pane - * @li preview : shows a preview next to the fileview - * @li single : hides the separate view for directories or the preview - * @li properties : shows a KPropertiesDialog for the selected files - * - * The short and detailed view are in an exclusive group. The sort-by - * actions are in an exclusive group as well. Also the "separate dirs", - * "preview" and "single" actions are in an exclusive group. - * - * You can e.g. use - * \code - * actionCollection()->action( "up" )->plug( someToolBar ); - * \endcode - * to add a button into a toolbar, which makes the dirOperator change to - * its parent directory. - * - * @returns all available Actions - */ - KActionCollection * actionCollection() const { return myActionCollection; } - - /** - * Sets the config object and the to be used group in KDirOperator. This - * will be used to store the view's configuration via - * KFileView::writeConfig() (and for KFileView::readConfig()). - * If you don't set this, the views cannot save and restore their - * configuration. - * - * Usually you call this right after KDirOperator creation so that the view - * instantiation can make use of it already. - * - * Note that KDirOperator does NOT take ownership of that object (typically - * it's TDEGlobal::config() anyway. - * - * @see viewConfig - * @see viewConfigGroup - * @since 3.1 - */ - // ### KDE4: make virtual - void setViewConfig( TDEConfig *config, const TQString& group ); - - /** - * Returns the TDEConfig object used for saving and restoring view's - * configuration. - * @returns the TDEConfig object used for saving and restoring view's - * configuration. - * @since 3.1 - */ - TDEConfig *viewConfig(); - - /** - * Returns the group name used for saving and restoring view's - * configuration. - * @returns the group name used for saving and restoring view's - * configuration. - * @since 3.1 - */ - TQString viewConfigGroup() const; - - /** - * Reads the default settings for a view, i.e. the default KFile::FileView. - * Also reads the sorting and whether hidden files should be shown. - * Note: the default view will not be set - you have to call - * \code - * setView( KFile::Default ) - * \endcode - * to apply it. - * - * @see setView - * @see setViewConfig - * @see writeConfig - */ - virtual void readConfig( TDEConfig *, const TQString& group = TQString::null ); - - /** - * Saves the current settings like sorting, simple or detailed view. - * - * @see readConfig - * @see setViewConfig - */ - virtual void writeConfig( TDEConfig *, const TQString& group = TQString::null ); - - - /** - * This is a KFileDialog specific hack: we want to select directories with - * single click, but not files. But as a generic class, we have to be able - * to select files on single click as well. - * - * This gives us the opportunity to do both. - * - * The default is false, set it to true if you don't want files selected - * with single click. - */ - void setOnlyDoubleClickSelectsFiles( bool enable ); - - /** - * @returns whether files (not directories) should only be select()ed by - * double-clicks. - * @see setOnlyDoubleClickSelectsFiles - */ - bool onlyDoubleClickSelectsFiles() const; - - /** - * Creates the given directory/url. If it is a relative path, - * it will be completed with the current directory. - * If enterDirectory is true, the directory will be entered after a - * successful operation. If unsuccessful, a messagebox will be presented - * to the user. - * @returns true if the directory could be created. - */ - // ### KDE4: make virtual and turn TQString into KURL - bool mkdir( const TQString& directory, bool enterDirectory = true ); - - /** - * Starts and returns a TDEIO::DeleteJob to delete the given @p items. - * - * @param items the list of items to be deleted - * @param ask specifies whether a confirmation dialog should be shown - * @param showProgress passed to the DeleteJob to show a progress dialog - */ - // ### KDE4: make virtual - TDEIO::DeleteJob * del( const KFileItemList& items, - bool ask = true, bool showProgress = true ); - - /** - * Starts and returns a TDEIO::DeleteJob to delete the given @p items. - * - * @param items the list of items to be deleted - * @param parent the parent widget used for the confirmation dialog - * @param ask specifies whether a confirmation dialog should be shown - * @param showProgress passed to the DeleteJob to show a progress dialog - * @since 3.1 - */ - // ### KDE4: make virtual - TDEIO::DeleteJob * del( const KFileItemList& items, TQWidget *parent, - bool ask = true, bool showProgress = true ); - - /** - * Clears the forward and backward history. - */ - void clearHistory(); - - /** - * When going up in the directory hierarchy, KDirOperator can highlight - * the directory that was just left. - * - * I.e. when you go from /home/gis/src to /home/gis, the item "src" will - * be made the current item. - * - * Default is off, because this behavior introduces bug #136630. - * Don't enable until this bug is fixed. - */ - // ### KDE4: make virtual - void setEnableDirHighlighting( bool enable ); - - /** - * @returns whether the last directory will be made the current item - * when going up in the directory hierarchy. - * - * Default is false. - */ - bool dirHighlighting() const; - - /** - * @returns true if we are in directory-only mode, that is, no files are - * shown. - */ - bool dirOnlyMode() const { return dirOnlyMode( myMode ); } - - static bool dirOnlyMode( uint mode ) { - return ( (mode & KFile::Directory) && - (mode & (KFile::File | KFile::Files)) == 0 ); - } - - /** - * Sets up the action menu. - * @param whichActions is an value of OR'd ActionTypes that controls which actions to show in the action menu - */ - void setupMenu(int whichActions); - - /** - * Reimplemented - allow dropping of files if @p b is true - * @param b true if the widget should allow dropping of files - */ - virtual void setAcceptDrops(bool b); - - /** - * Sets the options for dropping files. - * @see KFileView::DropOptions - * @since 3.2 - */ - // ### KDE4: make virtual - void setDropOptions(int options); - - /** - * Starts and returns a TDEIO::CopyJob to trash the given @p items. - * - * @param items the list of items to be trashed - * @param parent the parent widget used for the confirmation dialog - * @param ask specifies whether a confirmation dialog should be shown - * @param showProgress passed to the CopyJob to show a progress dialog - * @since 3.4 - */ - // ### KDE4: make virtual - TDEIO::CopyJob * trash( const KFileItemList& items, TQWidget *parent, - bool ask = true, bool showProgress = true ); - -protected: - /** - * A view factory for creating predefined fileviews. Called internally by setView - * , but you can also call it directly. Reimplement this if you depend on self defined fileviews. - * @param parent is the TQWidget to be set as parent - * @param view is the predefined view to be set, note: this can be several ones OR:ed together. - * @returns the created KFileView - * @see KFileView - * @see KCombiView - * @see KFileDetailView - * @see KFileIconView - * @see KFilePreview - * @see KFile::FileView - * @see setView - */ - virtual KFileView* createView( TQWidget* parent, KFile::FileView view ); - /** - * Sets a custom KDirLister to list directories. - */ - // ### KDE4: make virtual - void setDirLister( KDirLister *lister ); - - virtual void resizeEvent( TQResizeEvent * ); - - /** - * Sets up all the actions. Called from the constructor, you usually - * better not call this. - */ - void setupActions(); - - /** - * Updates the sorting-related actions to comply with the current sorting - * @see sorting - */ - void updateSortActions(); - - /** - * Updates the view-related actions to comply with the current - * KFile::FileView - */ - void updateViewActions(); - - /** - * Sets up the context-menu with all the necessary actions. Called from the - * constructor, you usually don't need to call this. - * @since 3.1 - */ - void setupMenu(); - - /** - * Synchronizes the completion objects with the entries of the - * currently listed url. - * - * Automatically called from makeCompletion() and - * makeDirCompletion() - */ - void prepareCompletionObjects(); - - /** - * Checks if there support from TDEIO::PreviewJob for the currently - * shown files, taking mimeFilter() and nameFilter() into account - * Enables/disables the preview-action accordingly. - */ - bool checkPreviewSupport(); - -public slots: - /** - * Goes one step back in the history and opens that url. - */ - // ### KDE4: make virtual - void back(); - - /** - * Goes one step forward in the history and opens that url. - */ - // ### KDE4: make virtual - void forward(); - - /** - * Enters the home directory. - */ - // ### KDE4: make virtual - void home(); - - /** - * Goes one directory up from the current url. - */ - // ### KDE4: make virtual - void cdUp(); - - /** - * to update the view after changing the settings - */ - void updateDir(); - - /** - * Re-reads the current url. - */ - // ### KDE4: make virtual - void rereadDir(); - - /** - * Opens a dialog to create a new directory. - */ - // ### KDE4: make virtual - void mkdir(); - - /** - * Deletes the currently selected files/directories. - */ - // ### KDE4: make virtual - void deleteSelected(); - - /** - * Enables/disables actions that are selection dependent. Call this e.g. - * when you are about to show a popup menu using some of KDirOperators - * actions. - */ - void updateSelectionDependentActions(); - - /** - * Tries to complete the given string (only completes files). - */ - TQString makeCompletion(const TQString&); - - /** - * Tries to complete the given string (only completes directores). - */ - TQString makeDirCompletion(const TQString&); - - /** - * Trashes the currently selected files/directories. - * @since 3.4 - */ - // ### KDE4: make virtual - void trashSelected(KAction::ActivationReason, TQt::ButtonState); - -protected slots: - /** - * Restores the normal cursor after showing the busy-cursor. Also hides - * the progressbar. - */ - void resetCursor(); - - /** - * Called after setURL() to load the directory, update the history, - * etc. - */ - void pathChanged(); - - /** - * Adds a new list of KFileItems to the view - * (coming from KDirLister) - */ - void insertNewFiles(const KFileItemList &newone); - - /** - * Removes the given KFileItem item from the view (usually called from - * KDirLister). - */ - void itemDeleted(KFileItem *); - - /** - * Enters the directory specified by the given @p item. - */ - // ### KDE4: make virtual - void selectDir(const KFileItem *item ); - - /** - * Emits fileSelected( item ) - */ - void selectFile(const KFileItem *item); - - /** - * Emits fileHighlighted( i ) - */ - void highlightFile(const KFileItem* i) { emit fileHighlighted( i ); } - - /** - * Called upon right-click to activate the popupmenu. - */ - virtual void activatedMenu( const KFileItem *, const TQPoint& pos ); - - /** - * Changes sorting to sort by name - */ - void sortByName() { byNameAction->setChecked( true ); } - - /** - * Changes sorting to sort by size - */ - void sortBySize() { bySizeAction->setChecked( true ); } - - /** - * Changes sorting to sort by date - */ - void sortByDate() { byDateAction->setChecked( true ); } - - /** - * Changes sorting to reverse sorting - */ - void sortReversed() { reverseAction->setChecked( !reverseAction->isChecked() ); } - - /** - * Toggles showing directories first / having them sorted like files. - */ - void toggleDirsFirst() { dirsFirstAction->setChecked( !dirsFirstAction->isChecked() ); } - - /** - * Toggles case sensitive / case insensitive sorting - */ - void toggleIgnoreCase() { caseInsensitiveAction->setChecked( !caseInsensitiveAction->isChecked() ); } - - /** - * Tries to make the given @p match as current item in the view and emits - * completion( match ) - */ - void slotCompletionMatch(const TQString& match); - -signals: - void urlEntered(const KURL& ); - void updateInformation(int files, int dirs); - void completion(const TQString&); - void finishedLoading(); - - /** - * Emitted whenever the current fileview is changed, either by an explicit - * call to setView() or by the user selecting a different view thru - * the GUI. - */ - void viewChanged( KFileView * newView ); - - /** - * Emitted when a file is highlighted or generally the selection changes in - * multiselection mode. In the latter case, @p item is 0L. You can access - * the selected items with selectedItems(). - */ - void fileHighlighted( const KFileItem *item ); - void dirActivated( const KFileItem *item ); - void fileSelected( const KFileItem *item ); - /** - * Emitted when files are dropped. Dropping files is disabled by - * default. You need to enable it with setAcceptDrops() - * @param item the item on which the drop occurred or 0. - * @param event the drop event itself. - * @param urls the urls that where dropped. - * @since 3.2 - */ - void dropped(const KFileItem *item, TQDropEvent*event, const KURL::List&urls); -private: - /** - * Contains all URLs you can reach with the back button. - */ - TQPtrStack<KURL> backStack; - - /** - * Contains all URLs you can reach with the forward button. - */ - TQPtrStack<KURL> forwardStack; - - KDirLister *dir; - KURL currUrl; - - KCompletion myCompletion; - KCompletion myDirCompletion; - bool myCompleteListDirty; - TQDir::SortSpec mySorting; - - /** - * Checks whether we preview support is available for the current - * mimetype/namefilter - */ - bool checkPreviewInternal() const; - - /** - * takes action on the new location. If it's a directory, change - * into it, if it's a file, correct the name, etc. - */ - void checkPath(const TQString& txt, bool takeFiles = false); - - void connectView(KFileView *); - - bool openURL( const KURL& url, bool keep = false, bool reload = false ); - - KFileView *m_fileView; - KFileItemList pendingMimeTypes; - - // the enum KFile::FileView as an int - int m_viewKind; - int defaultView; - - KFile::Mode myMode; - KProgress *progress; - - const TQWidget *myPreview; // temporary pointer for the preview widget - - // actions for the popupmenus - // ### clean up all those -- we have them all in the actionMenu! - KActionMenu *actionMenu; - - KAction *backAction; - KAction *forwardAction; - KAction *homeAction; - KAction *upAction; - KAction *reloadAction; - KActionSeparator *actionSeparator; - KAction *mkdirAction; - - KActionMenu *sortActionMenu; - KRadioAction *byNameAction; - KRadioAction *byDateAction; - KRadioAction *bySizeAction; - KToggleAction *reverseAction; - KToggleAction *dirsFirstAction; - KToggleAction *caseInsensitiveAction; - - KActionMenu *viewActionMenu; - KRadioAction *shortAction; - KRadioAction *detailedAction; - KToggleAction *showHiddenAction; - KToggleAction *separateDirsAction; - - KActionCollection *myActionCollection; - KActionCollection *viewActionCollection; - -private slots: - /** - * @internal - */ - void slotDetailedView(); - void slotSimpleView(); - void slotToggleHidden( bool ); - - void slotSeparateDirs(); - void slotDefaultPreview(); - void togglePreview( bool ); - - void slotSortByName(); - void slotSortBySize(); - void slotSortByDate(); - void slotSortReversed(); - void slotToggleDirsFirst(); - void slotToggleIgnoreCase(); - - void slotStarted(); - void slotProgress( int ); - void slotShowProgress(); - void slotIOFinished(); - void slotCanceled(); - void slotRedirected( const KURL& ); - - void slotViewActionAdded( KAction * ); - void slotViewActionRemoved( KAction * ); - void slotViewSortingChanged( TQDir::SortSpec ); - - void slotClearView(); - void slotRefreshItems( const KFileItemList& items ); - - void slotProperties(); - - void insertViewDependentActions(); - -private: - static bool isReadable( const KURL& url ); - -protected: - virtual void virtual_hook( int id, void* data ); -private: - class KDirOperatorPrivate; - KDirOperatorPrivate *d; -}; - -#endif |