Skip to content

Commit 2d4b556

Browse files
committed
ui: mission briefing window make autoconfig
1 parent f134c33 commit 2d4b556

File tree

2 files changed

+27
-31
lines changed

2 files changed

+27
-31
lines changed

src/window/mission_briefing.cpp

+9-31
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,9 @@
2323
#include "game/settings.h"
2424
#include "js/js_game.h"
2525

26-
struct mission_briefing : ui::widget {
27-
int is_review;
28-
int campaign_mission_loaded;
29-
};
26+
ui::mission_briefing_window g_mission_briefing;
3027

31-
mission_briefing g_mission_briefing;
32-
33-
ANK_REGISTER_CONFIG_ITERATOR(config_load_mission_briefing);
34-
void config_load_mission_briefing() {
35-
g_mission_briefing.load("mission_briefing_window");
36-
}
37-
38-
static void init() {
28+
void ui::mission_briefing_window::init() {
3929
rich_text_reset(0);
4030

4131
// load map!
@@ -44,7 +34,7 @@ static void init() {
4434
}
4535
}
4636

47-
static void window_briefing_draw_background() {
37+
int ui::mission_briefing_window::draw_background() {
4838
auto &data = g_mission_briefing;
4939
window_draw_underlying_window();
5040

@@ -107,31 +97,19 @@ static void window_briefing_draw_background() {
10797
g_settings.increase_difficulty();
10898
window_invalidate();
10999
});
110-
}
111-
112-
static void window_briefing_draw_foreground() {
113-
auto &ui = g_mission_briefing;
114-
ui.begin_widget(ui.pos);
115-
ui.draw();
116-
ui.end_widget();
117-
}
118-
119-
static void window_briefing_menu_handle_input(const mouse *m, const hotkeys *h) {
120-
auto &ui = g_mission_briefing;
121100

122-
ui.begin_widget(ui.pos);
123-
ui.handle_mouse(m);
124-
ui.end_widget();
101+
return 0;
125102
}
126103

127104
static void show(void) {
128105
static window_type window = {
129106
WINDOW_MISSION_BRIEFING,
130-
window_briefing_draw_background,
131-
window_briefing_draw_foreground,
132-
window_briefing_menu_handle_input
107+
[] () { g_mission_briefing.draw_background(); },
108+
[] () { g_mission_briefing.ui_draw_foreground(); },
109+
[] (const mouse *m, const hotkeys *h) { g_mission_briefing.ui_handle_mouse(m); }
133110
};
134-
init();
111+
112+
g_mission_briefing.init();
135113
window_show(&window);
136114
}
137115

src/window/mission_briefing.h

+18
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,22 @@
11
#pragma once
22

3+
#include "window/autoconfig_window.h"
4+
5+
namespace ui {
6+
7+
struct mission_briefing_window : public autoconfig_window_t<mission_briefing_window> {
8+
int is_review;
9+
int campaign_mission_loaded;
10+
11+
virtual int handle_mouse(const mouse *m) override { return 0; }
12+
virtual int get_tooltip_text() override { return 0; }
13+
virtual void draw_foreground() override {}
14+
virtual int draw_background() override;
15+
16+
virtual void init() override;
17+
};
18+
19+
}
20+
321
void window_mission_briefing_show(void);
422
void window_mission_briefing_show_review(void);

0 commit comments

Comments
 (0)