コード例 #1
0
 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()
コード例 #2
0
 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()
コード例 #3
0
 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()
コード例 #4
0
 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()
コード例 #5
0
    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)
コード例 #6
0
 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()
コード例 #7
0
 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()
コード例 #8
0
ファイル: convertdialog.py プロジェクト: atareao/pdf-tools
 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()
コード例 #9
0
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