139 lines
4.0 KiB
C++
139 lines
4.0 KiB
C++
#ifndef COMMAND_LIST_H
|
|
#define COMMAND_LIST_H
|
|
|
|
#include "route.h"
|
|
|
|
#include <commandsdispatcher.h>
|
|
|
|
namespace Components {
|
|
class PresentHost;
|
|
}
|
|
namespace Presents {
|
|
class FilePresent;
|
|
}
|
|
|
|
namespace CommandList {
|
|
|
|
class NewProject : public Schedule::GeCommand {
|
|
public:
|
|
NewProject(const QDir &dir, const QString &name);
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
|
|
private:
|
|
QDir dir_symbo;
|
|
QString name_val;
|
|
};
|
|
|
|
class OpenProject : public Schedule::GeCommand {
|
|
public:
|
|
OpenProject(const QString &path);
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
|
|
private:
|
|
QString project_path;
|
|
};
|
|
class CloseProject : public Schedule::GeCommand {
|
|
public:
|
|
CloseProject();
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
};
|
|
|
|
class NewPackage : public Schedule::GeCommand {
|
|
public:
|
|
NewPackage(const QString &path_string);
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
|
|
private:
|
|
QList<QString> sequence;
|
|
};
|
|
class NewFile : public Schedule::GeCommand {
|
|
public:
|
|
NewFile(const Core::Route &group, const QString &name,
|
|
const QString &suffix);
|
|
|
|
private:
|
|
QList<QString> group_val;
|
|
QString name_val, suffix;
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
};
|
|
class OpenFile : public Schedule::GeCommand {
|
|
public:
|
|
OpenFile(const Core::Route &path_node);
|
|
OpenFile(const QFileInfo &f);
|
|
|
|
private:
|
|
QList<QString> path_store;
|
|
QFileInfo final_file;
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
};
|
|
class SaveAll : public Schedule::GeCommand {
|
|
public:
|
|
SaveAll();
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
};
|
|
|
|
// 切换视图组件 ================================================================
|
|
class CompVisible : public Schedule::GeCommand {
|
|
public:
|
|
CompVisible(Components::PresentHost *host, Presents::FilePresent *target, bool state);
|
|
|
|
// GeCommand interface
|
|
public:
|
|
virtual QString name() const override;
|
|
virtual void run(Schedule::CommandsDispatcher *core) const override;
|
|
virtual QString toText() const override;
|
|
virtual void fromText(const QString &line) override;
|
|
|
|
private:
|
|
Components::PresentHost *host_ins;
|
|
Presents::FilePresent *target_ins;
|
|
Core::Route path;
|
|
bool state_val;
|
|
};
|
|
|
|
} // namespace CommandList
|
|
|
|
#endif // COMMAND_LIST_H
|