+ ViewBTree (Canvas::Group *parent, std::string filename, uint block_size, int tree_type, int type);
+
+ void Clear ();
+ void HighliteKey (Clave &k);
+
+ static double byte_to_pixels;
+ static double node_width;
+ static double node_height;
+
+ 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;
+
+ public:
+ void AddNode (uint num, uint padre = 0);
+ void on_item_selected (BTreeData *, uint, ViewNode *);
+ void on_item_activated (BTreeData *, uint, ViewNode *);