// -*- C++ -*- // #ifndef DIJKSTRABOX_H #define DIJKSTRABOX_H class DijkstraBox; #include #include #include #include #include ///Graphical interface to run Dijkstra algorithm. ///Child of \ref AlgoBox, ///therefore the only task to do at implementation was to /// ///-call init function with correct parameters from correctly parametrized constructor /// ///-implement \ref build_box function /// ///-implement \ref run function class DijkstraBox : public AlgoBox { ///Shows result of Dijkstra algorithm Gtk::Label resultlabel; ///Table for nodeselector widgets Gtk::Table table; ///Combobox for select source node Gtk::ComboBoxText source; ///Combobox for select target node Gtk::ComboBoxText target; public: ///Calls \ref AlgoBox::init function to initialize class properly, automatically. DijkstraBox(std::vector t); ///Prepare, run and postprocess Dijkstra algorithm. ///\ref glemon works only with maps filled with double values ///at the moment. While Dijkstra nedds a bool map as output. ///As postprocess this bool map should be transformed to ///double map. void run(); ///Builds the graphical design of the interface. void build_box(); void maplists_updated(); }; #endif //DIJKSTRABOX_H