-
Notifications
You must be signed in to change notification settings - Fork 47
/
ParticleChooserDialog.h
51 lines (41 loc) · 1.09 KB
/
ParticleChooserDialog.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
#pragma once
#include "wxutil/dialog/DialogBase.h"
#include "ParticleSelector.h"
#include "iparticles.h"
#include <string>
#include <map>
#include <memory>
#include <sigc++/trackable.h>
namespace ui
{
/**
* \brief
* Chooser dialog for selection and preview of particle systems.
*/
class ParticleChooserDialog :
public wxutil::DialogBase,
public sigc::trackable
{
private:
ParticleSelector* _selector;
private:
// Constructor creates elements
ParticleChooserDialog();
void _onItemActivated( wxDataViewEvent& ev );
public:
/**
* Display the dialog and return the name of the selected
* particle system, or the empty string if none was selected.
*
* @param currentParticle
* The particle name which should be highlighted in the list when the dialog
* is first displayed. If this value is left at the default value of "", no
* particle will be selected.
*
* @returns
* The name of the particle selected by the user, or an empty string if the
* choice was cancelled or invalid.
*/
static std::string ChooseParticle(const std::string& currentParticle = "");
};
}