コード例 #1
0
    def on_delivery_notes_view_row_activated(self, treeview, path, column):
        self.logger.debug("on_delivery_notes_view_row_activated")

        tree_iter = self.delivery_notes_model.get_iter(path)

        code = self.delivery_notes_model.get_value(tree_iter, self.CODE_COLUMN)
        delivery_note = DeliveryNote.select().where(
                DeliveryNote.code == code
                ).get()

        column_id = column.get_sort_column_id()
        if column_id == self.REMOVE_COLUMN:
            dialog = Gtk.MessageDialog(
                    self.window, 0, Gtk.MessageType.QUESTION,
                    Gtk.ButtonsType.YES_NO,
                    "Are you sure to remove the delivery note?"
                    )

            if dialog.run() == Gtk.ResponseType.YES:
                self.delete_delivery_note(delivery_note)
                self.clean_delivery_note_form()

            dialog.destroy()
        else:
            self.populate_delivery_note_form(delivery_note)
            self.selected_delivery_note = delivery_note
            self.update_total()
コード例 #2
0
    def on_save_button_clicked(self, button):
        self.logger.debug("on_save_button_clicked")

        delivery_note = self.validate_delivery_note()

        if delivery_note is None:
            dialog = Gtk.MessageDialog(
                    self.window, 0, Gtk.MessageType.ERROR,
                    Gtk.ButtonsType.CANCEL, "Invalid values"
                    )

            dialog.run()
            dialog.destroy()
        else:
            self.logger.debug(
                    "Trying to find delivery_note: %s", delivery_note.code
                    )

            query = DeliveryNote.select().where(
                    DeliveryNote.code == delivery_note.code
                    )

            if query.exists():
                dialog = Gtk.MessageDialog(
                        self.window, 0, Gtk.MessageType.QUESTION,
                        Gtk.ButtonsType.YES_NO,
                        "The delivery note already exists,"
                        " do you want to update it?"
                        )

                if dialog.run() == Gtk.ResponseType.YES:
                    self.update_delivery_note(delivery_note)

                dialog.destroy()
            else:
                self.create_delivery_note(delivery_note)

            self.selected_delivery_note = delivery_note