diff options
author | Alex <robotbrain@robotbrain.info> | 2015-08-18 19:10:17 -0400 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2015-09-06 16:00:07 +0200 |
commit | 583e5946f4cd29f0a18bcc4fad5608de739aa113 (patch) | |
tree | a3386315509351bb936a68bce4d9bdc1ea2e4cd1 /application/pages/WorldListPage.h | |
parent | 16df6c16f315aaa30ea844c8ea90ad425f9d4c89 (diff) | |
download | MultiMC-583e5946f4cd29f0a18bcc4fad5608de739aa113.tar MultiMC-583e5946f4cd29f0a18bcc4fad5608de739aa113.tar.gz MultiMC-583e5946f4cd29f0a18bcc4fad5608de739aa113.tar.lz MultiMC-583e5946f4cd29f0a18bcc4fad5608de739aa113.tar.xz MultiMC-583e5946f4cd29f0a18bcc4fad5608de739aa113.zip |
GH-1047 World management for instances. Removal only currently.
Diffstat (limited to 'application/pages/WorldListPage.h')
-rw-r--r-- | application/pages/WorldListPage.h | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/application/pages/WorldListPage.h b/application/pages/WorldListPage.h new file mode 100644 index 00000000..f55f2999 --- /dev/null +++ b/application/pages/WorldListPage.h @@ -0,0 +1,69 @@ +// +// Created by robotbrain on 8/18/15. +// + +#pragma once + +#include <QWidget> + +#include "minecraft/OneSixInstance.h" +#include "BasePage.h" +#include <MultiMC.h> +#include <pathutils.h> + +class WorldList; +namespace Ui +{ +class WorldListPage; +} + +class WorldListPage : public QWidget, public BasePage +{ + Q_OBJECT + +public: + explicit WorldListPage(BaseInstance *inst, std::shared_ptr<WorldList> worlds, QString id, + QString iconName, QString displayName, QString helpPage = "", + QWidget *parent = 0); + virtual ~WorldListPage(); + + virtual QString displayName() const override + { + return m_displayName; + } + virtual QIcon icon() const override + { + return MMC->getThemedIcon(m_iconName); + } + virtual QString id() const override + { + return m_id; + } + virtual QString helpPage() const override + { + return m_helpName; + } + virtual bool shouldDisplay() const; + + virtual void opened(); + virtual void closed(); + +protected: + bool eventFilter(QObject *obj, QEvent *ev); + bool worldListFilter(QKeyEvent *ev); + +protected: + BaseInstance *m_inst; + +private: + Ui::WorldListPage *ui; + std::shared_ptr<WorldList> m_worlds; + QString m_iconName; + QString m_id; + QString m_displayName; + QString m_helpName; + +private slots: + void on_rmWorldBtn_clicked(); + void on_viewFolderBtn_clicked(); +}; |