]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blobdiff - Client/src/item_union.cpp
se mejora la conexion entre compuertas, se salvan en el XML, hay un par de cosas...
[z.facultad/75.42/plaqui.git] / Client / src / item_union.cpp
index b96c137845c7f3c2b6d0cd8ab1d5211937040858..08bad4ed80fa04d59b7e7e85b47eca2826fb9ab5 100644 (file)
@@ -17,6 +17,7 @@ ViewUnion::ViewUnion(Glib::ustring _name, int orientacion):ViewItem(_name)
                case 3:
                        image.set(PACKAGE_DATA_DIR"/plaqui-client/pixmaps/y_o.png");
        }
+       m_or = orientacion;
        image.show();
        set_size_request();
 }
@@ -25,3 +26,31 @@ ViewUnion::~ViewUnion()
 {
 }
 
+bool ViewUnion::on_image_expose_event(GdkEventExpose *e)
+{
+       Glib::RefPtr<Gdk::Colormap> colormap = image.get_colormap();
+       Gdk::Color blanco = Gdk::Color("white");
+       colormap->alloc_color(color);
+       colormap->alloc_color(blanco);
+       gc->set_foreground(color);
+       gc->set_background(color);
+       int w,h;
+       w = image.get_width();
+       h = image.get_height();
+       switch (m_or) {
+               case 0:
+                       image.get_window()->draw_rectangle(gc, 1, w/2-2, h/2, 4, h/2);
+                       gc->set_foreground(blanco);
+                       image.get_window()->draw_rectangle(gc, 0, w/2-3, h/2-1, 6, h/2);
+               break;
+               case 1:
+                       image.get_window()->draw_rectangle(gc, 1, 0, h/2-2, w/2, 4);
+               break;
+               case 2:
+                       image.get_window()->draw_rectangle(gc, 1, w/2-2, 0, 4, h/2);
+               break;
+               case 3:
+                       image.get_window()->draw_rectangle(gc, 1, w/2, h/2-2, w/2, 4);
+       }
+}
+