OpenMoHAA 0.82.0
Loading...
Searching...
No Matches
cl_uifilepicker.h
1/*
2===========================================================================
3Copyright (C) 2023 the OpenMoHAA team
4
5This file is part of OpenMoHAA source code.
6
7OpenMoHAA source code is free software; you can redistribute it
8and/or modify it under the terms of the GNU General Public License as
9published by the Free Software Foundation; either version 2 of the License,
10or (at your option) any later version.
11
12OpenMoHAA source code is distributed in the hope that it will be
13useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with OpenMoHAA source code; if not, write to the Free Software
19Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20===========================================================================
21*/
22
23#pragma once
24
25class UIListCtrl;
26
27class FilePickerClass : public USignal
28{
29 UIFloatingWindow *window;
30 UIListCtrl *listbox;
31 str currentDirectory;
32 str rootDirectory;
33 str extension;
34 // Added in 2.0
35 str ignoredFiles;
36
37public:
38 CLASS_PROTOTYPE(FilePickerClass);
39
40private:
41 void SetupFiles(void);
42 void GotoParentDirectory(void);
43 void GotoSubDirectory(str subdir);
44 // ignore_files parameter, added in 2.0
45 void Initialize(const char *root_directory, const char *current_directory, const char *ext, const char* ignore_files);
46
47protected:
48 void CloseWindow(void);
49 void FileSelected(Event *ev);
50 virtual void FileSelected(const str& currentDirectory, const str& partialName, const str& fullname);
51 void FileChosen(Event *ev);
52 virtual void FileChosen(const str& currentDirectory, const str& partialName, const str& fullname);
53 void OnDeactivated(Event *ev);
54
55public:
56 FilePickerClass();
57 ~FilePickerClass();
58
59 void Setup(const char *root_directory, const char *current_directory, const char *ext, const char* ignore_files = NULL);
60};
Definition listener.h:246
Definition uifloatwnd.h:35
Definition uilistctrl.h:42
Definition usignal.h:42
Definition str.h:77