algowin.h
author hegyi
Fri, 06 Jan 2006 14:36:46 +0000
branchgui
changeset 112 3689cb170d3e
parent 108 bf355fd6563e
child 114 0ace7edbb06f
permissions -rw-r--r--
MapSelector has become a standalone class.
hegyi@103
     1
// -*- C++ -*- //
hegyi@103
     2
hegyi@103
     3
#ifndef ALGOWIN_H
hegyi@103
     4
#define ALGOWIN_H
hegyi@103
     5
hegyi@103
     6
class AlgoWin;
hegyi@103
     7
hegyi@103
     8
#include <all_include.h>
hegyi@109
     9
//#include <mapstorage.h>
hegyi@103
    10
#include <algobox.h>
hegyi@103
    11
#include <libgnomecanvasmm.h>
hegyi@103
    12
#include <libgnomecanvasmm/polygon.h>
hegyi@103
    13
hegyi@109
    14
class MapStorage;
hegyi@109
    15
hegyi@106
    16
enum {GENERAL, KRUSKAL, ALGO_NUM}; // algorithm IDs;
hegyi@103
    17
hegyi@106
    18
class AlgoWin : public Gtk::Window
hegyi@103
    19
{
hegyi@103
    20
private:
hegyi@103
    21
  AlgoBox * ab;
hegyi@106
    22
  Gtk::Button * runbutton;
hegyi@106
    23
  Gtk::Button * closebutton;
hegyi@103
    24
hegyi@103
    25
protected:
hegyi@103
    26
  sigc::signal<void, AlgoWin *> signal_closed;  
hegyi@106
    27
  sigc::signal<void, AlgoWin *, std::string> signal_maplist_need;  
hegyi@103
    28
hegyi@103
    29
public:
hegyi@106
    30
  bool closeIfEscapeIsPressed(GdkEventKey* e);
hegyi@103
    31
hegyi@106
    32
  sigc::signal<void, AlgoWin *> signal_closing();
hegyi@106
    33
  sigc::signal<void, AlgoWin *, std::string> signal_maplist_needed();
hegyi@103
    34
hegyi@106
    35
  void emit_tab_change(std::string);
hegyi@103
    36
hegyi@108
    37
  AlgoWin(int, std::vector<std::string>);
hegyi@106
    38
hegyi@106
    39
  void update_tablist(std::vector<std::string> tabnames);
hegyi@109
    40
  void update_maplist(MapStorage *);
hegyi@106
    41
hegyi@106
    42
  void on_hide();
hegyi@103
    43
};
hegyi@103
    44
#endif //ALGOWIN_H