1
0
mirror of https://github.com/gryf/pygtktalog.git synced 2025-12-17 19:40:21 +01:00

* Added CZYTAJTO (polish README file).

* Changed katalog file extension from .pgt into or .tgz.
 * Removed compression choice form preferences.
This commit is contained in:
2008-05-14 11:29:13 +00:00
parent e51a447809
commit 453fb848aa
4 changed files with 92 additions and 222 deletions

11
README
View File

@@ -25,14 +25,12 @@ REQUIREMENTS
pyGTKtalog is written in python with following dependencies:
- python 2.4 or higher
- pygtk <http://www.pygtk.org>
- pygtk 2.10 or higher <http://www.pygtk.org>
- pysqlite2 <http://pysqlite.org/> (unnecessary, if python 2.5 is used)
Optional modules:
- PIL <http://www.pythonware.com/products/pil/index.htm> for image manipulation
- pyExcelerator <http://sourceforge.net/projects/pyexcelerator> for export to
excel capability
Additional pyGTKtalog uses pygtkmvc <http://pygtkmvc.sourceforge.net> by Roberto
Cavada and EXIF module by Gene Cash (slightly updatetd to EXIF 2.2 by me) which
@@ -118,14 +116,13 @@ Removed:
- anidb link/imdb link
Maybe in future versions. Now text file descriptions/notes and tags have to
be enough for good and fast information search.
- file information (date, size, etc) (50%) (no need for?)
NOTES
=====
Catalog file is tared and optionaly gziped sqlite database and directories with
images and thumbnails. If there are more images, the size of catalog file will
grow. So be carefull with adding big images in your catalog file!
Catalog file is tared and gziped sqlite database and directories with images and
thumbnails. If there are more images, the size of catalog file will grow. So be
carefull with adding big images in your catalog file!
BUGS
====

View File

@@ -89,16 +89,57 @@
<property name="column_spacing">3</property>
<property name="row_spacing">3</property>
<child>
<widget class="GtkLabel" id="label5">
<widget class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Eject program:</property>
<property name="mnemonic_widget">ejt_entry</property>
<property name="label" translatable="yes">Mount point:</property>
<property name="mnemonic_widget">mnt_entry</property>
</widget>
<packing>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="mnt_entry">
<property name="width_request">100</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkButton" id="button_mnt">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Browse...</property>
<property name="use_underline">True</property>
<property name="response_id">0</property>
<signal name="clicked" handler="on_button_mnt_clicked"/>
<signal name="activate" handler="on_button_mnt_activate"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="ejt_entry">
<property name="width_request">100</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
</child>
@@ -122,56 +163,15 @@
</packing>
</child>
<child>
<widget class="GtkEntry" id="ejt_entry">
<property name="width_request">100</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkButton" id="button_mnt">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Browse...</property>
<property name="use_underline">True</property>
<property name="response_id">0</property>
<signal name="clicked" handler="on_button_mnt_clicked"/>
<signal name="activate" handler="on_button_mnt_activate"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="mnt_entry">
<property name="width_request">100</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label4">
<widget class="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Mount point:</property>
<property name="mnemonic_widget">mnt_entry</property>
<property name="label" translatable="yes">Eject program:</property>
<property name="mnemonic_widget">ejt_entry</property>
</widget>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
@@ -257,7 +257,6 @@
</child>
<child>
<widget class="GtkCheckButton" id="ch_compress">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Compress collection</property>
<property name="use_underline">True</property>
@@ -293,18 +292,14 @@
<property name="column_spacing">3</property>
<property name="row_spacing">3</property>
<child>
<widget class="GtkButton" id="button_imv">
<widget class="GtkLabel" id="label_imv">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Browse...</property>
<property name="use_underline">True</property>
<property name="response_id">0</property>
<signal name="clicked" handler="on_button_imv_clicked"/>
<property name="xalign">0</property>
<property name="label" translatable="yes">Image viewer:</property>
<property name="mnemonic_widget">mnt_entry</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
@@ -323,14 +318,18 @@
</packing>
</child>
<child>
<widget class="GtkLabel" id="label_imv">
<widget class="GtkButton" id="button_imv">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Image viewer:</property>
<property name="mnemonic_widget">mnt_entry</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">Browse...</property>
<property name="use_underline">True</property>
<property name="response_id">0</property>
<signal name="clicked" handler="on_button_imv_clicked"/>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="x_options"></property>
<property name="y_options"></property>
</packing>
@@ -612,7 +611,7 @@
<property name="n_columns">2</property>
<property name="row_spacing">3</property>
<child>
<widget class="GtkEntry" id="com_entry">
<widget class="GtkEntry" id="ext_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
@@ -620,19 +619,6 @@
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="label" translatable="yes">Command:</property>
</widget>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
@@ -648,7 +634,18 @@
</packing>
</child>
<child>
<widget class="GtkEntry" id="ext_entry">
<widget class="GtkLabel" id="label6">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="label" translatable="yes">Command:</property>
</widget>
<packing>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="com_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
@@ -656,6 +653,8 @@
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
</packing>
</child>
</widget>

View File

@@ -1,130 +0,0 @@
<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
<glade-interface>
<widget class="GtkWindow" id="window1">
<property name="visible">True</property>
<property name="title" translatable="yes">window1</property>
<property name="type">GTK_WINDOW_TOPLEVEL</property>
<property name="window_position">GTK_WIN_POS_NONE</property>
<property name="modal">False</property>
<property name="resizable">True</property>
<property name="destroy_with_parent">False</property>
<property name="decorated">True</property>
<property name="skip_taskbar_hint">False</property>
<property name="skip_pager_hint">False</property>
<property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
<property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
<property name="focus_on_map">True</property>
<property name="urgency_hint">False</property>
<signal name="delete_event" handler="on_window1_delete_event" last_modification_time="Mon, 30 Apr 2007 10:09:49 GMT"/>
<child>
<widget class="GtkFrame" id="frame1">
<property name="visible">True</property>
<property name="label_xalign">0</property>
<property name="label_yalign">0.5</property>
<property name="shadow_type">GTK_SHADOW_NONE</property>
<child>
<widget class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xscale">1</property>
<property name="yscale">1</property>
<property name="top_padding">0</property>
<property name="bottom_padding">0</property>
<property name="left_padding">12</property>
<property name="right_padding">0</property>
<child>
<widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">0</property>
<child>
<widget class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="label" translatable="yes">label2</property>
<property name="use_underline">False</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkHSeparator" id="hseparator1">
<property name="visible">True</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">True</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="button1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">button1</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
</widget>
</child>
</widget>
</child>
<child>
<widget class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;frame1&lt;/b&gt;</property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="type">label_item</property>
</packing>
</child>
</widget>
</child>
</widget>
</glade-interface>

View File

@@ -281,6 +281,7 @@ class ChooseDBFilename(object):
f = gtk.FileFilter()
f.set_name("Catalog files")
f.add_pattern("*.pgt")
f.add_pattern("*.pgt.tgz")
self.dialog.add_filter(f)
f = gtk.FileFilter()
f.set_name("All files")
@@ -297,13 +298,15 @@ class ChooseDBFilename(object):
response = self.dialog.run()
if response == gtk.RESPONSE_OK:
filename = self.dialog.get_filename()
if filename[-4] == '.':
if filename[-3:].lower() != 'pgt':
filename = filename + '.pgt'
else:
filename = filename[:-3] + 'pgt'
print filename, ' do ',
if filename[-8:].lower() != '.pgt.tgz' and \
filename[-4:].lower() != '.pgt':
filename = filename + '.pgt.tgz'
elif filename[-4:].lower() == '.pgt':
filename = filename[:-4] + '.pgt.tgz'
else:
filename = filename + '.pgt'
filename = filename[:-8] + '.pgt.tgz'
print filename
self.__class__.URI = self.dialog.get_current_folder_uri()
self.dialog.destroy()
return filename
@@ -316,7 +319,7 @@ class LoadDBFile(object):
"""Specific class for displaying openFile dialog. It has veryfication
for file existence."""
URI=None
URI = None
def __init__(self, path=None):
self.path = path
@@ -335,6 +338,7 @@ class LoadDBFile(object):
f = gtk.FileFilter()
f.set_name("Catalog files")
f.add_pattern("*.pgt")
f.add_pattern("*.pgt.tgz")
self.dialog.add_filter(f)
f = gtk.FileFilter()
f.set_name("All files")