hegyi@1871
|
1 |
// -*- C++ -*- //
|
hegyi@1871
|
2 |
|
hegyi@1871
|
3 |
#ifndef ALGOWIN_H
|
hegyi@1871
|
4 |
#define ALGOWIN_H
|
hegyi@1871
|
5 |
|
hegyi@1871
|
6 |
class AlgoWin;
|
hegyi@1871
|
7 |
|
hegyi@1871
|
8 |
#include <all_include.h>
|
hegyi@1871
|
9 |
#include <algobox.h>
|
hegyi@1871
|
10 |
#include <libgnomecanvasmm.h>
|
hegyi@1871
|
11 |
#include <libgnomecanvasmm/polygon.h>
|
hegyi@1871
|
12 |
|
hegyi@1876
|
13 |
enum {GENERAL, KRUSKAL, ALGO_NUM}; // algorithm IDs;
|
hegyi@1871
|
14 |
|
hegyi@1876
|
15 |
class AlgoWin : public Gtk::Window
|
hegyi@1871
|
16 |
{
|
hegyi@1871
|
17 |
private:
|
hegyi@1871
|
18 |
AlgoBox * ab;
|
hegyi@1876
|
19 |
Gtk::Button * runbutton;
|
hegyi@1876
|
20 |
Gtk::Button * closebutton;
|
hegyi@1871
|
21 |
|
hegyi@1871
|
22 |
protected:
|
hegyi@1871
|
23 |
sigc::signal<void, AlgoWin *> signal_closed;
|
hegyi@1876
|
24 |
sigc::signal<void, AlgoWin *, std::string> signal_maplist_need;
|
hegyi@1871
|
25 |
|
hegyi@1871
|
26 |
public:
|
hegyi@1876
|
27 |
bool closeIfEscapeIsPressed(GdkEventKey* e);
|
hegyi@1871
|
28 |
|
hegyi@1876
|
29 |
sigc::signal<void, AlgoWin *> signal_closing();
|
hegyi@1876
|
30 |
sigc::signal<void, AlgoWin *, std::string> signal_maplist_needed();
|
hegyi@1871
|
31 |
|
hegyi@1876
|
32 |
void emit_tab_change(std::string);
|
hegyi@1871
|
33 |
|
hegyi@1876
|
34 |
AlgoWin(int, std::vector<std::string>, std::vector<std::string>, std::vector<std::string>);
|
hegyi@1876
|
35 |
|
hegyi@1876
|
36 |
void update_tablist(std::vector<std::string> tabnames);
|
hegyi@1876
|
37 |
void update_maplist(std::vector<std::string>, std::vector<std::string>);
|
hegyi@1876
|
38 |
|
hegyi@1876
|
39 |
void on_hide();
|
hegyi@1871
|
40 |
};
|
hegyi@1871
|
41 |
#endif //ALGOWIN_H
|