#include <string>
#include "btree.h"
+#include "view_node.h"
#define NODE_WIDTH 500
#define NODE_HEIGHT 50
ViewBTree (Canvas::Group *parent, std::string filename);
static double byte_to_pixels;
+
+ typedef SigC::Signal2<void, BTreeData *, BTreeNodeHeader&> type_signal_selected;
+ type_signal_selected signal_selected ();
protected:
+ type_signal_selected m_signal_selected;
int max_level; /* Lo saco de la raiz */
/* Posicion X por nivel */
std::map<uint,double> pos_x;
+ /* Control para no poner 2 veces un nodo */
+ /* Un nodo que quiera ser puesto 2 veces es un bug :) */
+ std::map<uint,bool> node_placed;
void AddNode (uint num);
+ void on_item_selected (BTreeData *, uint);
};
-class ViewNode : public Canvas::Group {
- public:
- ViewNode (Canvas::Group *parent, uint num, BTreeNodeHeader &header, std::list<BTreeData *> &keys);
-
- std::list<uint>& getChilds () { return hijos; }
- private:
- std::list<uint> hijos;
-};
-
#endif