]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Client/src/item.cpp
Se cambia un ERRROORRRR en consola feo por un mensaje mas coherente en la UI
[z.facultad/75.42/plaqui.git] / Client / src / item.cpp
index 418647ec589f1bccd80856d16504a7bd2e89af34..be4e47db9eb525de4ba55b8579317be4b9e3059c 100644 (file)
@@ -1,24 +1,32 @@
-#include "item.h"
 
+#include "item.h"
+#include <sstream>
+#include <string>
 
 ViewItem::ViewItem(Glib::ustring _name):Gtk::EventBox(),image()
 {
        name = _name;
        set_events(Gdk::BUTTON_PRESS_MASK);
+       actual_flow = -1;
        add(image);
+
+       open = false;
+       actual_flow = extra = 0;
+
+       image.signal_expose_event().connect( SigC::slot(*this, &ViewItem::on_image_expose_event) );
 }
 
-ViewItem::~ViewItem()
+void ViewItem::on_realize()
 {
+       Gtk::EventBox::on_realize();
+       Glib::RefPtr<Gdk::Window> window = get_window();
+       gc = Gdk::GC::create(window);
 }
-/*
-bool ViewItem::on_expose_event(GdkEventExpose* event)
+
+ViewItem::~ViewItem()
 {
-       image->render_to_drawable ( get_window(),  get_style()->get_black_gc(), 0,  0,  0,  0,  image->get_width() ,image->get_height() , 
-                                                                                                                               Gdk::RGB_DITHER_NONE, 0, 0);
-       return true;
 }
-*/
+
 void ViewItem::set_position(int _x, int _y)
 {
        x = _x;
@@ -30,8 +38,22 @@ void ViewItem::set_name(Glib::ustring _name)
        name = _name;
 }
 
-Glib::ustring ViewItem::get_name()
+std::string ViewItem::get_actual_flow()
+{
+       std::stringstream ss;
+       std::string s;
+
+       ss << actual_flow;
+       ss >> s;
+       return s;
+}
+
+bool ViewItem::on_image_expose_event(GdkEventExpose *e)
 {
-       return name;
+       Glib::RefPtr<Gdk::Colormap> colormap = image.get_colormap();
+       colormap->alloc_color(color);
+       gc->set_foreground(color);
+       gc->set_background(color);
+       image.get_window()->draw_rectangle(gc, 1, 0, 0, 10, 10);
 }