Minetest 5.9.0-dev
 
Loading...
Searching...
No Matches
guiPathSelectMenu.h
Go to the documentation of this file.
1/*
2 Minetest
3 Copyright (C) 2013 sapier
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation; either version 2.1 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License along
16 with this program; if not, write to the Free Software Foundation, Inc.,
17 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19
20#pragma once
21
22#include <string>
23
24#include "modalMenu.h"
25#include "IGUIFileOpenDialog.h"
26#include "guiFormSpecMenu.h" //required because of TextDest only !!!
27
29{
30public:
31 GUIFileSelectMenu(gui::IGUIEnvironment *env, gui::IGUIElement *parent, s32 id,
32 IMenuManager *menumgr, const std::string &title,
33 const std::string &formid, bool is_file_select);
35
36 /*
37 Remove and re-add (or reposition) stuff
38 */
39 void regenerateGui(v2u32 screensize);
40
41 void drawMenu();
42
43 bool OnEvent(const SEvent &event);
44
45 void setTextDest(TextDest *dest) { m_text_dst = dest; }
46
47protected:
48 std::wstring getLabelByID(s32 id) { return L""; }
49 std::string getNameByID(s32 id) { return ""; }
50
51private:
52 void acceptInput();
53
54 std::wstring m_title;
55 bool m_accepted = false;
56
57 gui::IGUIFileOpenDialog *m_fileOpenDialog = nullptr;
58
59 TextDest *m_text_dst = nullptr;
60
61 std::string m_formname;
63};
Definition: guiPathSelectMenu.h:29
TextDest * m_text_dst
Definition: guiPathSelectMenu.h:59
bool m_file_select_dialog
Definition: guiPathSelectMenu.h:62
void acceptInput()
Definition: guiPathSelectMenu.cpp:67
std::string m_formname
Definition: guiPathSelectMenu.h:61
~GUIFileSelectMenu()
Definition: guiPathSelectMenu.cpp:33
bool m_accepted
Definition: guiPathSelectMenu.h:55
std::wstring getLabelByID(s32 id)
Definition: guiPathSelectMenu.h:48
void drawMenu()
Definition: guiPathSelectMenu.cpp:58
bool OnEvent(const SEvent &event)
Definition: guiPathSelectMenu.cpp:89
void setTextDest(TextDest *dest)
Definition: guiPathSelectMenu.h:45
std::string getNameByID(s32 id)
Definition: guiPathSelectMenu.h:49
gui::IGUIFileOpenDialog * m_fileOpenDialog
Definition: guiPathSelectMenu.h:57
void regenerateGui(v2u32 screensize)
Definition: guiPathSelectMenu.cpp:38
std::wstring m_title
Definition: guiPathSelectMenu.h:54
Definition: modalMenu.h:48
Definition: modalMenu.h:37
core::vector2d< u32 > v2u32
Definition: irr_v2d.h:29
Definition: guiFormSpecMenu.h:82