/*************************************************************************** panelfunc.h ------------------- begin : Thu May 4 2000 copyright : (C) 2000 by Shie Erlich & Rafi Yanai e-mail : krusader@users.sourceforge.net web site : http://krusader.sourceforge.net --------------------------------------------------------------------------- Description *************************************************************************** A db dD d8888b. db db .d8888. .d8b. d8888b. d88888b d8888b. 88 ,8P' 88 `8D 88 88 88' YP d8' `8b 88 `8D 88' 88 `8D 88,8P 88oobY' 88 88 `8bo. 88ooo88 88 88 88ooooo 88oobY' 88`8b 88`8b 88 88 `Y8b. 88~~~88 88 88 88~~~~~ 88`8b 88 `88. 88 `88. 88b d88 db 8D 88 88 88 .8D 88. 88 `88. YP YD 88 YD ~Y8888P' `8888Y' YP YP Y8888D' Y88888P 88 YD H e a d e r F i l e *************************************************************************** * * * This program 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 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef PANELFUNC_H #define PANELFUNC_H #include "listpanel.h" #include "krviewitem.h" #include #include #include class ListPanelFunc : public TQObject{ friend class ListPanel; TQ_OBJECT public slots: inline vfile* getVFile(KrViewItem *item) { return files()->vfs_search(item->name()); } inline vfile* getVFile(const TQString& name) { return files()->vfs_search(name); } void execute(TQString&); void openUrl(const KURL& path, const TQString& nameToMakeCurrent = TQString()); void openUrl(const TQString& path, const TQString& nameToMakeCurrent = TQString()); void immediateOpenUrl( const KURL& path); void doOpenUrl(); void refresh(); void rename(const TQString &oldname, const TQString &newname); public: ListPanelFunc(class ListPanel *parent); ~ListPanelFunc(); vfs* files(); // return a pointer to the vfs void refreshActions(); void redirectLink(); void krlink(bool sym); void goBack(); void dirUp(); void properties(); void terminal(); void editFile(); void view(); void rename(); void mkdir(); void moveFiles(); void pack(); void unpack(); void testArchive(); void copyFiles(); void deleteFiles(bool reallyDelete=false); void calcSpace(); // calculate the occupied space and show it in a dialog void createChecksum(); void matchChecksum(); void copyToClipboard( bool move=false ); void pasteFromClipboard(); // calculate the occupied space. A dialog appears, if calculation lasts more than 3 seconds // and disappears, if the calculation is done. Returns true, if the result is ok and false // otherwise (Cancel was pressed). bool calcSpace(const TQStringList & items,TDEIO::filesize_t & totalSize,unsigned long & totalFiles,unsigned long & totalDirs); void FTPDisconnect(); void newFTPconnection(); inline ListPanelFunc* otherFunc(){ return panel->otherPanel->func; } private: KURL getVirtualBaseURL(); protected: ListPanel* panel; // our ListPanel TQValueStack urlStack; // Path stack for the "back" button bool inRefresh; // true when we are in refresh() vfs* vfsP; // pointer to vfs. TQTimer delayTimer; KURL delayURL; TQString nameToMakeCurrent; }; #endif