git-svn-id: svn://db.shs.com.ru/pip@42 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
49 lines
984 B
C++
49 lines
984 B
C++
#ifndef FILE_MANAGER_H
|
|
#define FILE_MANAGER_H
|
|
|
|
#include "piscreentiles.h"
|
|
#include "pidir.h"
|
|
|
|
class Daemon;
|
|
|
|
class FileManager: public PIObject {
|
|
PIOBJECT(FileManager)
|
|
public:
|
|
FileManager(Daemon * d);
|
|
|
|
PIScreenTile * tile() const;
|
|
|
|
private:
|
|
class TileDir: public TileList {
|
|
public:
|
|
TileDir();
|
|
void updateDir();
|
|
void buildNames();
|
|
bool keyEvent(PIKbdListener::KeyEvent key);
|
|
void sizeHint(int & w, int & h) const;
|
|
void resizeEvent(int w, int h);
|
|
void lock();
|
|
void unlock();
|
|
TileSimple * label_path;
|
|
PIVector<PIFile::FileInfo> entries;
|
|
PIDir dir;
|
|
PIMap<PIString, PIPair<int, int> > prev_pos;
|
|
bool resized;
|
|
};
|
|
|
|
EVENT_HANDLER1(void, keyEvent, PIKbdListener::KeyEvent, key);
|
|
EVENT(menuRequest);
|
|
void updateConsole();
|
|
|
|
bool del_commit;
|
|
TileDir * panels[2];
|
|
Daemon * daemon;
|
|
PIScreenTile * tile_root;
|
|
PIStringList selected;
|
|
typedef PIPair<PIString, PIString> SSPair;
|
|
|
|
};
|
|
|
|
|
|
#endif // FILE_MANAGER_H
|