X-Git-Url: https://git.llucax.com/z.facultad/75.52/treemulator.git/blobdiff_plain/84820a0fe02b9fdd63fb7c28d5a823bfa065c259..44c4c40e48cc4a72e81e0af80842738c45d6116f:/viewer/view_btree.cpp?ds=sidebyside diff --git a/viewer/view_btree.cpp b/viewer/view_btree.cpp index 4fb0839..d8bc219 100644 --- a/viewer/view_btree.cpp +++ b/viewer/view_btree.cpp @@ -82,55 +82,3 @@ ViewBTree::type_signal_selected ViewBTree::signal_selected () return m_signal_selected; } -ViewNode::ViewNode (Canvas::Group *parent, uint num, BTreeNodeHeader &header, std::list &keys) - : Canvas::Group (*parent) -{ - double header_w = ViewBTree::byte_to_pixels * sizeof (BTreeNodeHeader); - this->num = num; - - /* Fondo */ - Canvas::Rect *fondo = new Canvas::Rect (*this, 0, 0, NODE_WIDTH, NODE_HEIGHT); - fondo->property_fill_color() = "gray"; - fondo->property_outline_color() = "black"; - - /* Header */ - Canvas::Rect *h = new Canvas::Rect (*this, 0, 0, header_w, NODE_HEIGHT); - h->property_fill_color() = "blue"; - h->property_outline_color() = "black"; - - /* Numero de nodo */ - std::string node_num; - std::stringstream ss; - ss << num; - ss >> node_num; - new Canvas::Text (*this, header_w/2, NODE_HEIGHT/2, node_num); - - double x = header_w; - - std::list::iterator it = keys.begin (); - while (it != keys.end ()) { - BTreeData *data = (*it); - double w = ViewBTree::byte_to_pixels * data->Size (); - - ViewBTreeData *v = ViewBTreeData::Create (data, this, x, 0, w+x, NODE_HEIGHT); - v->signal_clicked ().connect ( sigc::mem_fun (this , &ViewNode::on_item_clicked )); - x += w; - it++; - - if (!dynamic_cast(data)) { - /* Si no es un dato de una hoja, tiene hijos */ - hijos.push_back (data->getChild ()); - } - } -} - -void ViewNode::on_item_clicked (BTreeData *data) -{ - m_signal_selected (data, num); -} - -ViewNode::type_signal_selected ViewNode::signal_selected () -{ - return m_signal_selected; -} -