mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-10 04:57:00 -04:00
436c437189
add compiler directives
104 lines
3.1 KiB
C++
104 lines
3.1 KiB
C++
//+----------------------------------------------------------------------------+
|
|
//| Description: Magic Set Editor - Program to make card games |
|
|
//| Copyright: (C) Twan van Laarhoven and the other MSE developers |
|
|
//| License: GNU General Public License 2 or later (see file COPYING) |
|
|
//+----------------------------------------------------------------------------+
|
|
|
|
#pragma once
|
|
|
|
// ----------------------------------------------------------------------------- : Includes
|
|
|
|
#include <util/prec.hpp>
|
|
#include <gui/control/filter_ctrl.hpp>
|
|
|
|
class PackageList;
|
|
class Game;
|
|
DECLARE_POINTER_TYPE(Set);
|
|
DECLARE_POINTER_TYPE(StyleSheet);
|
|
|
|
// ----------------------------------------------------------------------------- : NewSetWindow
|
|
|
|
/// Show the new set window, return the new set, if any
|
|
SetP new_set_window(Window* parent);
|
|
|
|
/// "Create a new set" dialog. First select game, then matching style.
|
|
class NewSetWindow : public wxDialog {
|
|
public:
|
|
/// The newly created set, if any
|
|
SetP set;
|
|
|
|
NewSetWindow(Window* parent);
|
|
|
|
// --------------------------------------------------- : data
|
|
private:
|
|
DECLARE_EVENT_TABLE();
|
|
|
|
// gui items
|
|
PackageList* game_list, *stylesheet_list;
|
|
|
|
FilterCtrl* game_filter;
|
|
String game_filter_value;
|
|
|
|
FilterCtrl* stylesheet_filter;
|
|
String stylesheet_filter_value;
|
|
|
|
// --------------------------------------------------- : events
|
|
|
|
void onGameSelect (wxCommandEvent&);
|
|
|
|
void onStyleSheetSelect (wxCommandEvent&);
|
|
void onStyleSheetActivate(wxCommandEvent&);
|
|
void onStylesheetFilterUpdate(wxCommandEvent&);
|
|
void onGameFilterUpdate(wxCommandEvent&);
|
|
|
|
virtual void OnOK(wxCommandEvent&);
|
|
|
|
void onUpdateUI(wxUpdateUIEvent&);
|
|
void onIdle(wxIdleEvent&);
|
|
|
|
// we are done, close the window
|
|
void done();
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------- : SelectStyleSheetWindow
|
|
// very similair, so in the same file
|
|
|
|
/// Show the select stylesheet window, return the selected stylesheet, if any
|
|
StyleSheetP select_stylesheet(const Game& game, const String& failed_name);
|
|
|
|
/// "Create a new set" dialog. First select game, then matching style.
|
|
class SelectStyleSheetWindow : public wxDialog {
|
|
public:
|
|
/// The selected stylesheet, if any
|
|
StyleSheetP stylesheet;
|
|
|
|
SelectStyleSheetWindow(Window* parent, const Game& game, const String& failed_name);
|
|
|
|
// --------------------------------------------------- : data
|
|
private:
|
|
DECLARE_EVENT_TABLE();
|
|
|
|
const Game& game;
|
|
|
|
// gui items
|
|
PackageList* stylesheet_list;
|
|
|
|
FilterCtrl* stylesheet_filter;
|
|
String stylesheet_filter_value;
|
|
|
|
// --------------------------------------------------- : events
|
|
|
|
void onStyleSheetSelect (wxCommandEvent&);
|
|
void onStyleSheetActivate(wxCommandEvent&);
|
|
void onStylesheetFilterUpdate(wxCommandEvent&);
|
|
|
|
virtual void OnOK(wxCommandEvent&);
|
|
|
|
void onUpdateUI(wxUpdateUIEvent&);
|
|
void onIdle(wxIdleEvent&);
|
|
|
|
// we are done, close the window
|
|
void done();
|
|
};
|
|
|