X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/667418327423ba116d24751926a95a2f1235849c..c0e0cf58ce033421d125afb813636f102456592c:/Constructor/src/exclusa.cpp diff --git a/Constructor/src/exclusa.cpp b/Constructor/src/exclusa.cpp index 69eef26..ea152b3 100644 --- a/Constructor/src/exclusa.cpp +++ b/Constructor/src/exclusa.cpp @@ -1,13 +1,20 @@ #include "exclusa.h" #include "exclusaptywnd.h" -Exclusa::Exclusa() +Exclusa::Exclusa(int orientacion) { imageN = Gdk::Pixbuf::create_from_file(PACKAGE_DATA_DIR"/plaqui-constructor/pixmaps/exclusa_h.png"); imageS = Gdk::Pixbuf::create_from_file(PACKAGE_DATA_DIR"/plaqui-constructor/pixmaps/exclusa_s.png"); null = Gdk::Pixbuf::create_from_file(PACKAGE_DATA_DIR"/plaqui-constructor/pixmaps/null.png"); - imgActual = 0; - image = imageN; + imgActual = orientacion; + switch (imgActual) { + case 1: + image = imageS; + break; + default: + imgActual = 0; + image = imageN; + } set_size_request(image->get_width(), image->get_height()); Glib::RefPtr ref = Gnome::Glade::Xml::create(PACKAGE_DATA_DIR"/plaqui-constructor/dialogs/constructor.glade", "exclusa_pty_wnd"); @@ -32,13 +39,13 @@ bool Exclusa::on_button_press_event(GdkEventButton *event) t_line tmp_line; if ((event->type == GDK_BUTTON_PRESS) && ( event->button == 1)) { combo_entry->set_text(name); + WorkPlace::pointed = ID; if (CItem::logic_connect) { tmp_line.logic = workplace->get_logic_item(CItem::quien); tmp_line.store = this; workplace->lista_lineas.push_back(tmp_line); workplace->on_expose_event(&e); - } - CItem::logic_connect = false; + } } if ((event->type == GDK_BUTTON_PRESS) && ( event->button ==2)){ @@ -66,6 +73,7 @@ bool Exclusa::on_button_press_event(GdkEventButton *event) if (estado) exclusa_pty_wnd->rd_btn_open->set_active(true); exclusa_pty_wnd->show(); } + workplace->on_expose_event(&e); return true; } @@ -187,6 +195,19 @@ ConnectorType Exclusa::get_connector_type(int _a, int _b) return UNDEF; } +void Exclusa::get_logic_connect_position(int& _a, int& _b) +{ + switch (imgActual) { + case 0: + _a = x + image->get_width()/2; + _b = y; + break; + case 1: + _a = x + image->get_width(); + _b = y + image->get_height()/2; + } +} + void Exclusa::set_default_connector() { connect_vec[0].type = UNDEF;