class TestBlockMenu(TestBase): def setUp(self): self.blockmenu = BlockMenu() def test_show(self): event = Gdk.Event().new(Gdk.EventType.BUTTON_PRESS) event.button = 1 self.blockmenu.show(self.create_block(), event) self.blockmenu.collapse_menu_item.emit("activate") self.refresh_gui() self.blockmenu.delete_menu_item.emit("activate") self.refresh_gui() self.blockmenu.destroy()
def setUp(self): """Do the test basic setup.""" win = MainWindow() diagram = Diagram(MainWindow()) blockmodel = BlockModel() self.block = Block(diagram, blockmodel) self.blockmenu = BlockMenu(self.block, None)
def __on_button_press(self, canvas_item, target_item, event): """ This method monitors when the button is pressed. Parameters: canvas_item Returns: * **Types** (:class:`boolean<boolean>`) Indicates the button is pressed. """ # with Shift if event.state == Gdk.ModifierType.SHIFT_MASK \ | Gdk.ModifierType.MOD2_MASK: if self in self.diagram.current_widgets: self.diagram.current_widgets.remove(self) else: self.diagram.current_widgets.append(self) else: if self not in self.diagram.current_widgets: self.diagram.current_widgets = [] self.diagram.current_widgets.append(self) self.diagram.show_block_property(self) Gtk.Widget.grab_focus(self.diagram) if event.button.button == 1: self.remember_x = event.x self.remember_y = event.y elif event.button.button == 3: BlockMenu(self, event) return True self.diagram.update_flows() return True
def setUp(self): self.blockmenu = BlockMenu()
def __init__(self): """ This method is constructor. """ System() Gtk.Window.__init__(self, title="Mosaicode") self.resize(System.properties.width, System.properties.height) self.main_control = MainControl(self) # GUI components self.menu = Menu(self) self.toolbar = Toolbar(self) self.search = SearchBar(self) self.block_notebook = BlockNotebook(self) self.property_box = PropertyBox(self) self.work_area = WorkArea(self) self.status = Status(self) self.block_menu = BlockMenu() self.menu.add_help() System.set_log(self.status) # vbox main # ----------------------------------------------------- # | Menu # ----------------------------------------------------- # | Toolbar # ----------------------------------------------------- # | V Paned bottom # ----------------------------------------------------- # First Vertical Box vbox_main = Gtk.VBox() self.add(vbox_main) vbox_main.pack_start(self.menu, False, True, 0) vbox_main.pack_start(self.toolbar, False, False, 0) self.vpaned_bottom = Gtk.Paned.new(Gtk.Orientation.VERTICAL) vbox_main.add(self.vpaned_bottom) # vpaned_bottom # ----------------------------------------------------- # | hpaned_work_area # ===================================================== # | status # ----------------------------------------------------- self.hpaned_work_area = Gtk.HPaned() self.hpaned_work_area.connect("accept-position", self.__resize) self.hpaned_work_area.set_position(System.properties.hpaned_work_area) self.vpaned_bottom.add1(self.hpaned_work_area) self.vpaned_bottom.add2(self.__create_frame(self.status)) self.vpaned_bottom.set_position(System.properties.vpaned_bottom) self.vpaned_bottom.set_size_request(50, 50) # hpaned_work_area # ----------------------------------------------------- # | vbox_left || work_area # ----------------------------------------------------- vbox_left = Gtk.VBox(False, 0) self.hpaned_work_area.add1(vbox_left) self.hpaned_work_area.add2(self.work_area) # vbox_left # ----------------------------------------------------- # |search # ----------------------------------------------------- # |vpaned_left # ----------------------------------------------------- vbox_left.pack_start(self.search, False, False, 0) self.vpaned_left = Gtk.VPaned() vbox_left.pack_start(self.vpaned_left, True, True, 0) # vpaned_left # ----------------------------------------------------- # |blocks_tree_view # ===================================================== # |property_box # ----------------------------------------------------- self.vpaned_left.add1(self.__create_frame(self.block_notebook)) self.vpaned_left.add2(self.__create_frame(self.property_box)) self.vpaned_left.set_position(System.properties.vpaned_left) self.connect("delete-event", self.main_control.exit) self.connect("key-press-event", self.__on_key_press) self.connect("check-resize", self.__resize) self.main_control.init()