-
Notifications
You must be signed in to change notification settings - Fork 224
/
duplicated_items_window.h
63 lines (50 loc) · 1.87 KB
/
duplicated_items_window.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
//////////////////////////////////////////////////////////////////////
// This file is part of Remere's Map Editor
//////////////////////////////////////////////////////////////////////
// Remere's Map Editor is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Remere's Map Editor is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//////////////////////////////////////////////////////////////////////
#ifndef _RME_DUPLICATED_ITEMS_WINDOW_H_
#define _RME_DUPLICATED_ITEMS_WINDOW_H_
#include "main.h"
#include "position.h"
class MapTab;
class DuplicatedItemsWindow : public wxPanel
{
struct DuplicatedItem {
DuplicatedItem(const Position& position, uint16_t itemId, uint16_t count) :
position(position), itemId(itemId), count(count) {}
Position position;
uint16_t itemId;
uint16_t count;
};
public:
DuplicatedItemsWindow(wxWindow* parent);
virtual ~DuplicatedItemsWindow();
MapTab* GetMapTab() const noexcept { return map_tab; }
void StartSearch(MapTab* tab, bool selection);
void Clear();
void UpdateButtons();
void OnClickResult(wxCommandEvent&);
void OnClickRemove(wxCommandEvent&);
void OnClickRemoveAll(wxCommandEvent&);
void OnClickExport(wxCommandEvent&);
protected:
bool removeItem(DuplicatedItem* data, Action* action);
MapTab* map_tab;
wxListBox* items_list;
wxButton* remove_button;
wxButton* remove_all_button;
wxBitmapButton* export_button;
};
#endif