def on_button_add_clicked(self, widget): selection = self.treeview.get_selection() if selection.count_selected_rows() > 0: model, iter = selection.get_selected() treepath = model.get_path(iter) position = int(str(treepath)) else: position = 0 model = self.treeview.get_model() dialog = Gtk.FileChooserDialog(_('Select one or more image files'), self, Gtk.FileChooserAction.OPEN, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_select_multiple(True) dialog.set_current_folder(os.getenv('HOME')) for aMimetype in MIMETYPES_IMAGE.keys(): filter = Gtk.FileFilter() filter.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filter.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filter.add_pattern(pattern) dialog.add_filter(filter) preview = Gtk.Image() response = dialog.run() if response == Gtk.ResponseType.OK: filenames = dialog.get_filenames() if len(filenames) > 0: for i, filename in enumerate(filenames): model.insert(position+i+1, [filename]) dialog.destroy()
def on_button_clicked(self, button): dialog = Gtk.FileChooserDialog( _('Select one image'), self, Gtk.FileChooserAction.OPEN, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_select_multiple(False) dialog.set_current_folder(os.getenv('HOME')) for aMimetype in MIMETYPES_IMAGE.keys(): filter = Gtk.FileFilter() filter.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filter.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filter.add_pattern(pattern) dialog.add_filter(filter) preview = Gtk.Image() response = dialog.run() if response == Gtk.ResponseType.OK: self.entry.set_text(dialog.get_filename()) dialog.destroy() #### file_watermark = self.entry.get_text() im = Image.open(file_watermark) width, height = im.size self.update_preview()
def on_button_add_clicked(self, widget): selection = self.treeview.get_selection() if selection.count_selected_rows() > 0: model, iter = selection.get_selected() treepath = model.get_path(iter) position = int(str(treepath)) else: position = 0 model = self.treeview.get_model() dialog = Gtk.FileChooserDialog( _('Select one or more image files'), self, Gtk.FileChooserAction.OPEN, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_select_multiple(True) dialog.set_current_folder(os.getenv('HOME')) for aMimetype in MIMETYPES_IMAGE.keys(): filter = Gtk.FileFilter() filter.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filter.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filter.add_pattern(pattern) dialog.add_filter(filter) preview = Gtk.Image() response = dialog.run() if response == Gtk.ResponseType.OK: filenames = dialog.get_filenames() if len(filenames) > 0: for i, filename in enumerate(filenames): model.insert(position + i + 1, [filename]) dialog.destroy()
def on_button_watermark_clicked(self, button): dialog = Gtk.FileChooserDialog(_('Select one image'), self, Gtk.FileChooserAction.OPEN, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_select_multiple(False) dialog.set_current_folder(os.getenv('HOME')) png_filtert = None for aMimetype in MIMETYPES_IMAGE.keys(): filtert = Gtk.FileFilter() filtert.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filtert.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filtert.add_pattern(pattern) dialog.add_filter(filtert) if aMimetype == 'PNG': png_filtert = filtert preview = Gtk.Image() dialog.set_preview_widget(preview) dialog.set_filter(png_filtert) dialog.connect('update-preview', update_preview_cb, preview) response = dialog.run() if response == Gtk.ResponseType.OK: self.file_entry.set_label(dialog.get_filename()) dialog.destroy()
def init_ui(self): BasicDialog.init_ui(self) options = Gtk.ListStore(str) for extension in MIMETYPES_IMAGE.keys(): if extension != _('ALL'): options.append([extension]) label = Gtk.Label(_('Convert to') + ':') self.grid.attach(label, 0, 0, 1, 1) self.convert_to = Gtk.ComboBox.new_with_model_and_entry(options) self.convert_to.set_entry_text_column(0) self.convert_to.set_active(0) self.grid.attach(self.convert_to, 1, 0, 1, 1)
def __init__(self): Gtk.Dialog.__init__( self, _('Convert to'), None, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, (Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT, Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL)) self.set_size_request(300, 140) self.set_resizable(False) self.set_icon_from_file(comun.ICON) self.connect('destroy', self.close_application) vbox0 = Gtk.VBox(spacing=5) vbox0.set_border_width(5) self.get_content_area().add(vbox0) # notebook = Gtk.Notebook() vbox0.add(notebook) # frame1 = Gtk.Frame() notebook.append_page(frame1, tab_label=Gtk.Label(_('Convert to'))) # table1 = Gtk.Table(rows=1, columns=2, homogeneous=False) table1.set_border_width(5) table1.set_col_spacings(5) table1.set_row_spacings(5) frame1.add(table1) # options = Gtk.ListStore(str) for extension in MIMETYPES_IMAGE.keys(): if extension != _('ALL'): options.append([extension]) label = Gtk.Label(_('Convert to') + ':') table1.attach(label, 0, 1, 0, 1, xoptions=Gtk.AttachOptions.EXPAND, yoptions=Gtk.AttachOptions.SHRINK) self.convert_to = Gtk.ComboBox.new_with_model_and_entry(options) self.convert_to.set_entry_text_column(0) self.convert_to.set_active(0) table1.attach(self.convert_to, 1, 2, 0, 1, xoptions=Gtk.AttachOptions.EXPAND, yoptions=Gtk.AttachOptions.SHRINK) self.show_all()
def on_button_add_clicked(self, widget): selection = self.iconview.get_selected_items() if selection: model = self.iconview.get_model() position = int(str(selection[0])) else: model = self.iconview.get_model() position = len(model) dialog = Gtk.FileChooserDialog(_('Select one or more pdf files'), self, Gtk.FileChooserAction.OPEN, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_select_multiple(True) dialog.set_current_folder(os.getenv('HOME')) for aMimetype in MIMETYPES_IMAGE.keys(): filtert = Gtk.FileFilter() filtert.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filtert.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filtert.add_pattern(pattern) dialog.add_filter(filtert) preview = Gtk.Image() dialog.set_preview_widget(preview) dialog.connect('update-preview', update_preview_cb, preview) response = dialog.run() if response == Gtk.ResponseType.OK: filenames = dialog.get_filenames() if filenames: model = self.iconview.get_model() for filename in filenames: pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(filename, 200, 200) if pixbuf is not None: position += 1 if self.iconview.get_item_width() < pixbuf.get_width(): self.iconview.set_item_width(pixbuf.get_width()) model.insert(position, [pixbuf, os.path.basename(filename), filename]) dialog.destroy()
def __init__(self): Gtk.Dialog.__init__( self, _('Convert to'), None, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, (Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT, Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL)) self.set_size_request(300, 140) self.set_resizable(False) self.set_icon_from_file(comun.ICON) self.connect('destroy', self.close_application) vbox0 = Gtk.VBox(spacing=5) vbox0.set_border_width(5) self.get_content_area().add(vbox0) # notebook = Gtk.Notebook() vbox0.add(notebook) # frame1 = Gtk.Frame() notebook.append_page(frame1, tab_label=Gtk.Label(_('Convert to'))) # table1 = Gtk.Table(rows=1, columns=2, homogeneous=False) table1.set_border_width(5) table1.set_col_spacings(5) table1.set_row_spacings(5) frame1.add(table1) # options = Gtk.ListStore(str) for extension in MIMETYPES_IMAGE.keys(): if extension != _('ALL'): options.append([extension]) label = Gtk.Label(_('Convert to')+':') table1.attach(label, 0, 1, 0, 1, xoptions=Gtk.AttachOptions.EXPAND, yoptions=Gtk.AttachOptions.SHRINK) self.convert_to = Gtk.ComboBox.new_with_model_and_entry(options) self.convert_to.set_entry_text_column(0) self.convert_to.set_active(0) table1.attach(self.convert_to, 1, 2, 0, 1, xoptions=Gtk.AttachOptions.EXPAND, yoptions=Gtk.AttachOptions.SHRINK) self.show_all()
def dialog_save_as_image(title, original_file, window): dialog = Gtk.FileChooserDialog(title, window, Gtk.FileChooserAction.SAVE, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OPEN, Gtk.ResponseType.OK)) dialog.set_default_response(Gtk.ResponseType.OK) dialog.set_current_folder(os.path.dirname(original_file)) dialog.set_filename(original_file) for aMimetype in MIMETYPES_IMAGE.keys(): filtert = Gtk.FileFilter() filtert.set_name(aMimetype) for mime_type in MIMETYPES_IMAGE[aMimetype]['mimetypes']: filtert.add_mime_type(mime_type) for pattern in MIMETYPES_IMAGE[aMimetype]['patterns']: filtert.add_pattern(pattern) dialog.add_filter(filtert) if dialog.run() == Gtk.ResponseType.OK: filename = dialog.get_filename() else: filename = None dialog.destroy() return filename