syncthingtray/tray/gui/dirview.h
Martchus aac87621dc Streamline context menus of regular tray application and Plasmoid
* Support triggering actions via the context menu in the regular tray like
  it is already possible in the Plasmoid
* Support copying via the context menu in the Plasmoid like it is already
  possible in the regular tray
* Reduce repetition of coding patterns using templates
2020-10-07 21:42:50 +02:00

34 lines
666 B
C++

#ifndef DIRVIEW_H
#define DIRVIEW_H
#include <QTreeView>
namespace Data {
struct SyncthingDir;
class SyncthingDirectoryModel;
} // namespace Data
namespace QtGui {
class DirView : public QTreeView {
Q_OBJECT
public:
using ModelType = Data::SyncthingDirectoryModel;
DirView(QWidget *parent = nullptr);
Q_SIGNALS:
void openDir(const Data::SyncthingDir &dir);
void scanDir(const Data::SyncthingDir &dir);
void pauseResumeDir(const Data::SyncthingDir &dir);
protected:
void mouseReleaseEvent(QMouseEvent *event) override;
private Q_SLOTS:
void showContextMenu(const QPoint &position);
};
} // namespace QtGui
#endif // DIRVIEW_H