]> git.llucax.com Git - z.facultad/75.52/treemulator.git/blob - viewer/view_node.h
Agrego posibilidad de ir al nodo anterior.
[z.facultad/75.52/treemulator.git] / viewer / view_node.h
1
2 #ifndef _VIEW_NODE_H_
3 #define _VIEW_NODE_H_
4
5 #include <libgnomecanvasmm.h>
6 #include "view_btree.h"
7 #include "view_btree_data.h"
8
9 using namespace Gnome;
10
11 class ViewNode : public Canvas::Group {
12         public:
13                 ViewNode (Canvas::Group *parent, uint num, uint padre, BTreeNodeHeader &header, std::list<BTreeData *> &keys);
14
15                 void HighliteKey (Clave &k);
16
17                 std::list<uint>& getChilds () { return hijos; } 
18
19                 typedef SigC::Signal3<void, BTreeData *, uint, ViewNode *> type_signal_selected;
20                 type_signal_selected signal_selected ();
21
22                 typedef SigC::Signal3<void, BTreeData *, uint, ViewNode *> type_signal_activated;
23                 type_signal_activated signal_activated ();
24
25                 void SetSelected (bool);
26         private:
27                 void on_item_clicked (BTreeData *data, ViewBTreeData *);
28                 void on_item_activated (BTreeData *data, ViewBTreeData *);
29                 std::list<uint> hijos;
30                 type_signal_selected m_signal_selected;
31                 type_signal_activated m_signal_activated;
32                 uint num, padre;
33                 Canvas::Rect *fondo;
34                 ViewBTreeData *last_selected;
35                 std::list<ViewBTreeData *> datas;
36 };
37
38 #endif
39