]> git.llucax.com Git - z.facultad/75.42/plaqui.git/blob - Client/src/item_union.cpp
* Se modifica el modelo para que el tanque mando en el XML el estado logico de sus...
[z.facultad/75.42/plaqui.git] / Client / src / item_union.cpp
1
2 #include "item_union.h"
3 #include <iostream>
4
5 ViewUnion::ViewUnion(Glib::ustring _name, int orientacion):ViewItem(_name)
6 {
7         switch (orientacion) {
8                 case 0:
9                         image.set(PACKAGE_DATA_DIR"/plaqui-client/pixmaps/y_n.png");
10                 break;
11                 case 1:
12                         image.set(PACKAGE_DATA_DIR"/plaqui-client/pixmaps/y_e.png");
13                 break;
14                 case 2:
15                         image.set(PACKAGE_DATA_DIR"/plaqui-client/pixmaps/y_s.png");
16                 break;
17                 case 3:
18                         image.set(PACKAGE_DATA_DIR"/plaqui-client/pixmaps/y_o.png");
19         }
20         m_or = orientacion;
21         image.show();
22         set_size_request();
23 }
24
25 ViewUnion::~ViewUnion()
26 {
27 }
28
29 bool ViewUnion::on_image_expose_event(GdkEventExpose *e)
30 {
31         Glib::RefPtr<Gdk::Colormap> colormap = Gtk::Widget::get_default_colormap();
32         if (!colormap->alloc_color(color, false, false)) {
33                 std::cout << "ERROR ALOCANDO COLOR!" << std::endl;
34         }
35         gc->set_foreground(color);
36         gc->set_background(color);
37         
38         int w,h;
39         w = image.get_width();
40         h = image.get_height();
41         if (actual_flow > 0) {
42                 switch (m_or) {
43                         case 0:
44                                 image.get_window()->draw_rectangle(gc, 1, w/2-3, 16, 6, h-16);
45                                 image.get_window()->draw_rectangle(gc, 1, 0, 13, w, 6);
46                         break;
47                         case 1:
48                                 image.get_window()->draw_rectangle(gc, 1, 0, h/2-3, w/2, 6);
49                                 image.get_window()->draw_rectangle(gc, 1, 51, 0, 6, h);
50                         break;
51                         case 2:
52                                 image.get_window()->draw_rectangle(gc, 1, w/2-3, 0, 6, h/2);
53                                 image.get_window()->draw_rectangle(gc, 1, 0, 51, w, 6);
54                         break;
55                         case 3:
56                                 image.get_window()->draw_rectangle(gc, 1, w/2, h/2-3, w/2, 6);
57                                 image.get_window()->draw_rectangle(gc, 1, 16, 0, 6, h);
58                 }
59         }
60         return true;
61 }
62
63