Changes of Revision 5

curlew.changes Changed
x
 
1
@@ -1,16 +1,4 @@
2
 -------------------------------------------------------------------
3
-Sun Feb 28 04:04:00 UTC 2016 - avvissu@yandex.ru
4
-
5
-- Set mplayer as the default player
6
-
7
--------------------------------------------------------------------
8
-Sat Feb 27 16:34:14 UTC 2016 - avvissu@yandex.ru
9
-
10
-- Update to 0.2.1:
11
-  * see: /usr/share/doc/packages/curlew/ChangeLog
12
-- Add a language pack
13
-
14
--------------------------------------------------------------------
15
 Fri Apr 10 21:09:24 UTC 2015 - avvissu@yandex.ru
16
 
17
 - Initial package
18
curlew.spec Changed
114
 
1
@@ -1,7 +1,7 @@
2
 #
3
 # spec file for package curlew
4
 #
5
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
6
+# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
7
 #
8
 # All modifications and additions to the file contributed by third parties
9
 # remain the property of their copyright owners, unless otherwise agreed
10
@@ -17,27 +17,27 @@
11
 
12
 
13
 Name:           curlew
14
-Version:        0.2.1
15
+Version:        0.1.22.3
16
 Release:        0
17
 Summary:        Multimedia converter
18
 License:        Waqf
19
 Group:          Productivity/Multimedia/Video/Convertors
20
 Url:            http://sourceforge.net/projects/curlew/
21
-Source0:        http://sourceforge.net/projects/curlew/files/curlew-%{version}/%{name}-%{version}.tar.gz
22
-# PATCH-FIX-OPENSUSE path.patch avvissu@yandex.ru -- Change path to files
23
-Patch0:         curlew-0.2.1_path.patch
24
+Source0:        http://sourceforge.net/projects/curlew/files/curlew-0.1.22.3/%{name}-%{version}.tar.gz
25
+# PATCH-FIX-OPENSUSE desktop.patch avvissu@yandex.ru -- Generic name of the application
26
+Patch0:         curlew-0.1.22.3_desktop.patch
27
+BuildRequires:  ImageMagick
28
+BuildRequires:  desktop-file-utils
29
 BuildRequires:  hicolor-icon-theme
30
 BuildRequires:  intltool
31
-BuildRequires:  python3-base >= 3.3.2
32
-BuildRequires:  python3-setuptools
33
-BuildRequires:  rsvg-view
34
-BuildRequires:  update-desktop-files
35
-Requires:       dbus-1-python3
36
+BuildRequires:  python-devel
37
+BuildRequires:  python-distutils-extra
38
+BuildRequires:  python-gobject >= 3.0
39
+BuildRequires:  python-setuptools
40
 Requires:       ffmpeg
41
 Requires:       mediainfo
42
 Requires:       mencoder
43
-Requires:       python3-gobject
44
-Requires:       typelib(Gtk) = 3.0
45
+Requires:       python-gobject
46
 Requires:       xdg-utils
47
 # Conflict with ffmpeg
48
 #Requires:       libav-tools
49
@@ -61,48 +61,47 @@
50
   - Combine subtitle with video file.
51
   - Show error details if exist.
52
   - And more ...
53
-  
54
-%lang_package
55
 
56
 %prep
57
 %setup -q
58
 %patch0 -p1
59
 
60
-# Set mplayer as the default player
61
-sed -i '/self.player/s/avplay/mplayer/' $(grep -rl 'avplay')
62
-
63
 # Fix spurious-executable-perm
64
 find . -type f -perm /u+x -exec chmod 644 {} \; || :
65
 
66
 %build
67
-python3 setup.py build
68
+python setup.py build
69
 
70
 %install
71
-python3 setup.py install --root=%{buildroot}
72
-
73
-%suse_update_desktop_file -r %{name} AudioVideo Video AudioVideoEditing
74
+python setup.py install --root=%{buildroot}
75
 
76
 %find_lang %{name}
77
 
78
 %post
79
 %icon_theme_cache_post
80
 %desktop_database_post
81
+# Notify user about changes
82
+if [ $1 -ge 2 ] ; then
83
+mkdir -p %{_localstatedir}/adm/update-messages
84
+cat > %{_localstatedir}/adm/update-messages/%{name}-%{version} << EOF
85
+INFO: ValueError: unsupported pickle protocol: 3
86
+INFO: If you are switching between python versions, you will need to 
87
+INFO: remove the old profile from ~/.%{name}
88
+EOF
89
+fi
90
 
91
 %postun
92
 %icon_theme_cache_postun
93
 %desktop_database_postun
94
 
95
-%files
96
-%doc LICENSE* AUTHORS ChangeLog README
97
+%files -f %{name}.lang
98
+%defattr(-,root,root,-)
99
+%doc %{_datadir}/doc/curlew
100
 %{_bindir}/%{name}
101
-%{_datadir}/%{name}/
102
 %{_datadir}/applications/%{name}.desktop
103
 %{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
104
 %{_datadir}/icons/hicolor/*/apps/%{name}.png
105
-%{python3_sitelib}/%{name}-*.egg-info
106
-%{python3_sitelib}/%{name}/
107
-
108
-%files lang -f %{name}.lang
109
-%defattr(-,root,root,-)
110
+%{python_sitelib}/Curlew
111
+%{python_sitelib}/%{name}-*
112
 
113
 %changelog
114
curlew-0.1.22.3_desktop.patch Added
18
 
1
@@ -0,0 +1,16 @@
2
+diff -U 3 -H -d -r -N -- curlew-0.1.22.3.orig/curlew.desktop curlew-0.1.22.3/curlew.desktop
3
+--- curlew-0.1.22.3.orig/curlew.desktop    2013-10-08 11:52:26.000000000 +0300
4
++++ curlew-0.1.22.3/curlew.desktop 2015-04-11 01:14:51.039378764 +0300
5
+@@ -12,7 +12,11 @@
6
+ Comment=Easy to use Multimedia Converter for Linux
7
+ Comment[ar]=محول وسائط على لينكس سهل الاستخدام
8
+ Comment[fr]=Un Convertisseur Multimédia simple à utiliser sous Linux
9
+-Categories=AudioVideo;Video;
10
++GenericName=Multimedia Converter
11
++GenericName[ru]=Мультимедиа конвертер
12
++GenericName[ar]=تحويل الوسائط المتعددة
13
++GenericName[fr]=Convertisseur multimédia
14
++Categories=AudioVideo;Video;AudioVideoEditing;
15
+ #MimeType=audio/vorbis;audio/x-mp3;audio/x-ms-wma;audio/x-vorbis;audio/x-wav;video/x-ms-asf;audio/ogg;audio/3gpp;audio/AMR;audio/AMR-WB;video/3gpp;video/flv;video/mpeg;video/msvideo;video/x-mpeg;video/x-ms-asf;video/x-ms-wmv;video/quicktime;audio/x-realaudio;audio/x-pn-realaudio;video/vnd.rn-realvideo;audio/mp4a-latm;video/x-m4v;video/mp4;audio/x-matroska;video/x-matroska;audio/x-aiff;audio/x-monkeys-audio;video/x-m4v;audio/mp4a-latm;video/webm
16
+ Encoding=UTF-8
17
+ Terminal=false
18
curlew-0.2.1_path.patch Deleted
148
 
1
@@ -1,146 +0,0 @@
2
-diff -U 3 -dHrN curlew-0.2.1.orig/curlew curlew-0.2.1/curlew
3
---- curlew-0.2.1.orig/curlew   2016-01-23 15:08:20.000000000 +0300
4
-+++ curlew-0.2.1/curlew    2016-02-28 02:10:29.409365970 +0300
5
-@@ -1,9 +1,5 @@
6
- #!/usr/bin/env python3
7
- 
8
--from site import addsitedir
9
--addsitedir('/usr/share/curlew')
10
--addsitedir('/usr/local/share/curlew')
11
--
12
- import sys
13
--from modules.curlew import main
14
-+from curlew.curlew import main
15
- main(*sys.argv[1:])
16
-diff -U 3 -dHrN curlew-0.2.1.orig/modules/codecs.py curlew-0.2.1/modules/codecs.py
17
---- curlew-0.2.1.orig/modules/codecs.py    2016-02-27 10:27:05.000000000 +0300
18
-+++ curlew-0.2.1/modules/codecs.py 2016-02-28 02:19:50.890717533 +0300
19
-@@ -21,7 +21,7 @@
20
- gi.require_version('Gtk', '3.0')
21
- 
22
- from gi.repository import Gtk, Pango
23
--from modules.functions import get_available_codecs
24
-+from curlew.functions import get_available_codecs
25
- 
26
- class CodecsDialog(Gtk.Dialog):
27
-     def __init__(self, prnt, encoder, title):
28
-diff -U 3 -dHrN curlew-0.2.1.orig/modules/consts.py curlew-0.2.1/modules/consts.py
29
---- curlew-0.2.1.orig/modules/consts.py    2016-02-16 00:33:49.000000000 +0300
30
-+++ curlew-0.2.1/modules/consts.py 2016-02-28 02:49:54.000000000 +0300
31
-@@ -26,7 +26,7 @@
32
- CONF_FILE = join(CONF_PATH, 'curlew.cfg')
33
- 
34
- PKG_DIR = dirname(realpath(__file__))
35
--DTA_DIR = join(PKG_DIR, '../')
36
-+DTA_DIR = join(PKG_DIR, '../../../../share/curlew')
37
- 
38
- ORG_FFILE = join(DTA_DIR, 'formats.cfg')
39
- USR_FFILE = join(CONF_PATH, 'formats.cfg')
40
-diff -U 3 -dHrN curlew-0.2.1.orig/modules/curlew.py curlew-0.2.1/modules/curlew.py
41
---- curlew-0.2.1.orig/modules/curlew.py    2016-02-27 10:27:38.000000000 +0300
42
-+++ curlew-0.2.1/modules/curlew.py 2016-02-28 02:50:14.000000000 +0300
43
-@@ -39,21 +39,21 @@
44
-     from gi.repository import Gtk, GLib, Gdk, GObject, GdkPixbuf, Gio
45
-     import dbus.glib, dbus.service
46
-     
47
--    from modules.customwidgets import LabeledHBox, TimeLayout, HScale, \
48
-+    from curlew.customwidgets import LabeledHBox, TimeLayout, HScale, \
49
-     SpinsFrame, LabeledGrid, ComboWithEntry
50
--    from modules.about import About
51
--    from modules.functions import show_message, get_format_size, \
52
-+    from curlew.about import About
53
-+    from curlew.functions import show_message, get_format_size, \
54
-     duration_to_time, time_to_duration, check_codec
55
--    from modules.logdialog import LogDialog
56
--    from modules.tray import StatusIcon
57
--    from modules.languages import LANGUAGES
58
--    from modules.favdialog import Favorite
59
--    from modules.waitdialog import WaitDialog
60
--    from modules.fileinfos import FileInfos
61
--    from modules.formats import Formats
62
--    from modules.infobars import InfoBar
63
--    from modules.codecs import CodecsDialog
64
--    from modules.consts import CONF_PATH, HOME, CONF_FILE, DTA_DIR, \
65
-+    from curlew.logdialog import LogDialog
66
-+    from curlew.tray import StatusIcon
67
-+    from curlew.languages import LANGUAGES
68
-+    from curlew.favdialog import Favorite
69
-+    from curlew.waitdialog import WaitDialog
70
-+    from curlew.fileinfos import FileInfos
71
-+    from curlew.formats import Formats
72
-+    from curlew.infobars import InfoBar
73
-+    from curlew.codecs import CodecsDialog
74
-+    from curlew.consts import CONF_PATH, HOME, CONF_FILE, DTA_DIR, \
75
-     ORG_FFILE, USR_FFILE
76
- except Exception as e:
77
-     print(e)
78
-@@ -72,7 +72,7 @@
79
- 
80
- # Localization.
81
- DOMAIN = 'curlew'
82
--LOCALDIR = join(DTA_DIR, 'locale')
83
-+LOCALDIR = join(DTA_DIR, '../locale')
84
- gettext.install(DOMAIN, LOCALDIR)
85
- 
86
- # Create ".curlew" folder if not exist
87
-diff -U 3 -dHrN curlew-0.2.1.orig/modules/edition.py curlew-0.2.1/modules/edition.py
88
---- curlew-0.2.1.orig/modules/edition.py   2016-02-27 10:28:13.000000000 +0300
89
-+++ curlew-0.2.1/modules/edition.py    2016-02-28 02:19:50.886717580 +0300
90
-@@ -24,9 +24,9 @@
91
- 
92
- from gi.repository import Gtk, GLib
93
- 
94
--from modules.customwidgets import LabeledGrid, ButtonWithIcon
95
--from modules.consts import CONF_FILE, ORG_FFILE
96
--from modules.functions import show_message
97
-+from curlew.customwidgets import LabeledGrid, ButtonWithIcon
98
-+from curlew.consts import CONF_FILE, ORG_FFILE
99
-+from curlew.functions import show_message
100
- 
101
- 
102
- class FormatEditor(Gtk.Dialog):
103
-diff -U 3 -dHrN curlew-0.2.1.orig/modules/formats.py curlew-0.2.1/modules/formats.py
104
---- curlew-0.2.1.orig/modules/formats.py   2016-02-27 10:29:02.000000000 +0300
105
-+++ curlew-0.2.1/modules/formats.py    2016-02-28 02:19:50.882717628 +0300
106
-@@ -21,7 +21,7 @@
107
- gi.require_version('Gtk', '3.0')
108
- 
109
- from gi.repository import Gtk
110
--from modules.edition import FormatEditor
111
-+from curlew.edition import FormatEditor
112
- 
113
- class Formats(Gtk.Popover):
114
-     
115
-diff -U 3 -dHrN curlew-0.2.1.orig/setup.py curlew-0.2.1/setup.py
116
---- curlew-0.2.1.orig/setup.py 2016-02-27 10:24:30.000000000 +0300
117
-+++ curlew-0.2.1/setup.py  2016-02-28 01:50:54.810509993 +0300
118
-@@ -17,11 +17,7 @@
119
- doc_files  = ['LICENSE-ar.txt', 'LICENSE-en.txt', 'AUTHORS', 'ChangeLog', 'README']
120
- data_files = [('share/applications/', ['curlew.desktop']),
121
-               ('share/icons/hicolor/scalable/apps', ['curlew.svg']),
122
--              ('share/pixmaps', ['curlew.svg']),
123
--              ('share/doc/curlew', doc_files),
124
-               ('share/curlew', ['formats.cfg']),
125
--              #('share/curlew', ['formats.cfg', 'ffmpeg']), # Portable version
126
--              ('share/curlew/modules', glob("modules/*.py"))
127
-               ]
128
- 
129
- # Prepare curlew icons
130
-@@ -58,7 +54,7 @@
131
-         # Generate mo files
132
-         call("msgfmt {} -o {}".format(po_file, mo_path), shell=True)
133
-     
134
--    locales = map(lambda i: ('share/curlew/'+i, [i+'/curlew.mo', ]), glob('locale/*/LC_MESSAGES'))
135
-+    locales = map(lambda i: ('share/'+i, [i+'/curlew.mo', ]), glob('locale/*/LC_MESSAGES'))
136
-     data_files.extend(locales)
137
-     
138
-     return 0
139
-@@ -163,5 +159,7 @@
140
-                      'Topic :: Desktop Environment :: Gnome',
141
-                      'Topic :: Multimedia :: Sound/Audio :: Conversion',
142
-                      'Topic :: Utilities'],
143
--      data_files=data_files
144
-+      data_files=data_files,
145
-+      packages=['curlew'],
146
-+      package_dir={"curlew" : "modules"},
147
-       )
148
curlew-0.2.1.tar.gz/ChangeLog -> curlew-0.1.22.3.tar.gz/ChangeLog Changed
37
 
1
@@ -1,35 +1,3 @@
2
-Version 0.2.1
3
--------------
4
-
5
-* Fix bugs.
6
-
7
-Version 0.2.0
8
--------------
9
-
10
-* Check availability of codecs according to encoder
11
-* Show availabe codecs.
12
-* Enhanced video thumbnail (showed with correct aspect ratio).
13
-* New favorite list
14
-* Add global menu (Gnome Shell)
15
-* Allow to choose a player.
16
-* Allow to edit formats.
17
-* Enhanced interface.
18
-* ...
19
-
20
-Version 0.2.0 beta
21
-------------------
22
-
23
-* Redesigned UI.
24
-* Added OPUS audio format.
25
-* Ported code to Python 3.
26
-* New Dialog for formats with search entry.
27
-* Enhanced setup and reduced dependencies.
28
-* Removed mencoder and depends only on ffmpeg static build.
29
-* Fix bug in restore last size and position.
30
-* Removed double-click option to add file.
31
-* And more...
32
-
33
-
34
 Version 0.1.22.3
35
 ----------------
36
 
37
curlew-0.1.22.3.tar.gz/Curlew Added
2
 
1
+(directory)
2
curlew-0.1.22.3.tar.gz/Curlew/__init__.py Added
curlew-0.1.22.3.tar.gz/Curlew/about.py Added
56
 
1
@@ -0,0 +1,54 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk
23
+
24
+PROGRAMMER = 'Fayssal Chamekh <chamfay@gmail.com>'
25
+WEB_SITE = 'https://github.com/chamfay/Curlew'
26
+
27
+class About(Gtk.AboutDialog):
28
+    def __init__(self, parent):
29
+        Gtk.AboutDialog.__init__(self, parent=parent, wrap_license=True)
30
+        self.set_program_name(_('Curlew'))
31
+        self.set_authors([PROGRAMMER, 'Ehab El-Gedawy <ehabsas@gmail.com>', 'Andrej Kvasnica <andrej@gmail.com>'])
32
+        self.set_copyright("Copyright © 2012, 2014 Fayssal Chamekh <chamfay@gmail.com>")
33
+        self.set_version('0.1.22.3')
34
+        self.set_title(_('About Curlew'))
35
+        self.set_logo_icon_name('curlew')
36
+        self.set_icon_name('curlew')
37
+        self.set_comments(_('Easy to use Multimedia Converter for Linux'))
38
+        self.set_license("""
39
+Released under terms on waqf public license.
40
+
41
+This program is free software; you can redistribute it and/or modify it under the terms of the latest version waqf public license as published by ojuba.org.
42
+
43
+This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.
44
+        
45
+The latest version of the license can be found on:
46
+http://www.ojuba.org/wiki/doku.php/waqf/license
47
+""")
48
+        self.set_website(WEB_SITE)
49
+        self.set_website_label(WEB_SITE)
50
+        self.set_translator_credits(_("translator-credits"))
51
+        self.set_artists([PROGRAMMER, 'Smail <kungfu07mail@gmail.com>'])
52
+    
53
+    def show(self):
54
+        self.run()
55
+        self.destroy()
56
curlew-0.1.22.3.tar.gz/Curlew/curlew.py Added
201
 
1
@@ -0,0 +1,2452 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+try:
23
+    import sys
24
+    import os
25
+    import re
26
+    import time
27
+    import gettext
28
+    from subprocess import Popen, PIPE, call
29
+    from os.path import basename, isdir, splitext, join, dirname, realpath, \
30
+    isfile, exists, getsize
31
+    from os import listdir
32
+    from ConfigParser import ConfigParser, NoOptionError
33
+    from urllib import unquote
34
+    from gi.repository import Gtk, GLib, Gdk, GObject
35
+    import dbus.glib, dbus.service
36
+    import cPickle
37
+    from glob import glob
38
+
39
+    from customwidgets import LabeledHBox, TimeLayout, CustomHScale, \
40
+    CustomToolButton, SpinsFrame, LabeledGrid, CustomComboEntry
41
+    from about import About
42
+    from functions import show_message, get_format_size, duration_to_time, \
43
+    time_to_duration
44
+    from logdialog import LogDialog
45
+    from tray import StatusIcon
46
+    from languages import LANGUAGES
47
+    from favdialog import Favorite
48
+    from waitdialog import WaitDialog
49
+    from fileinfos import FileInfos
50
+    
51
+except Exception as detail:
52
+    print(detail)
53
+    sys.exit(1)
54
+
55
+#--- Localization setup
56
+exedir = dirname(sys.argv[0])
57
+
58
+DOMAIN = 'curlew'
59
+LOCALDIR = ''
60
+
61
+# Curlew script (default locale)
62
+if isdir(join(exedir, '..', 'share/locale')):
63
+    LOCALDIR = join(exedir, '..', 'share/locale')
64
+
65
+# Curlew script (test)
66
+elif isdir(join(exedir, 'locale')):
67
+    LOCALDIR = join(exedir, 'locale')
68
+
69
+# curlew.py
70
+else:
71
+    LOCALDIR = join(exedir, '..', 'locale')
72
+    
73
+gettext.install(DOMAIN, LOCALDIR)
74
+
75
+
76
+#--- Constants
77
+APP_DIR = dirname(realpath(__file__))
78
+HOME = os.getenv("HOME")
79
+TEN_SECONDS = '10'
80
+CONF_PATH = join(HOME, '.curlew')
81
+OPTS_FILE = join(CONF_PATH, 'curlew.cfg')
82
+ERROR_LOG = join(CONF_PATH, 'errors.log')
83
+PASS_LOG = '/tmp/pass1log'
84
+PASS_1_FILE = '/tmp/pass1file'
85
+PREVIEW_FILE = '/tmp/preview'
86
+IMG_PREV = '/tmp/img_prev.jpeg'
87
+FAV_FILE = join(CONF_PATH, 'fav.list')
88
+
89
+
90
+# Make .curlew folder if not exist
91
+if not exists(CONF_PATH): os.mkdir(CONF_PATH)
92
+
93
+# Treeview cols nbrs
94
+C_SKIP = 0  # Skip (checkbox)
95
+C_NAME = 1  # File name
96
+C_FSIZE = 2  # File size
97
+C_FDURA = 3  # File duration
98
+C_ESIZE = 4  # Estimated output size
99
+C_ELAPT = 5  # Elapsed time
100
+C_REMN = 6  # Remaining time
101
+C_PRGR = 7  # Progress value
102
+C_STAT = 8  # Stat string
103
+C_PULS = 9  # Pulse
104
+C_FILE = 10  # complete file name /path/file.ext
105
+
106
+
107
+#--- Main class        
108
+class Curlew(Gtk.Window):    
109
+    
110
+    def __init__(self, *cmd_line_files):
111
+        #--- Global Variables
112
+        self.curr_open_folder = HOME
113
+        self.curr_save_folder = HOME
114
+        self.is_converting = False
115
+        self.fp = None
116
+        self.Iter = None
117
+        self.total_duration = 0.0
118
+        self.out_file = None
119
+        self.counter = 20
120
+        self.errs_nbr = 0
121
+        self.pass_nbr = 0
122
+        
123
+        '''
124
+        self.pass_nbr = 0: Single pass encoding option
125
+        self.pass_nbr = 1: Two-pass encoding option (1st pass)
126
+        self.pass_nbr = 2: Two-pass encoding option (2nd pass)
127
+        '''
128
+        
129
+        self.encoder = ''
130
+        self.player = 'avplay'
131
+        self.is_preview = False
132
+        self.dict_icons = {}
133
+        self.icons_path = ''
134
+        
135
+        self._start_time = None
136
+        self.elapsed_time = '0.00.00'
137
+        
138
+        self.last_format = None
139
+        
140
+        self.is_maxi = False
141
+        
142
+        #--- Regex
143
+        self.reg_avconv_u = \
144
+        re.compile('''size=\s+(\d+\.*\d*).*time=(\d+\.\d*)''')  # ubuntu
145
+        self.reg_avconv_f = \
146
+        re.compile('''size=\s+(\d+\.*\d*).*time=(\d+:\d+:\d+.\d+)''')  # fedora
147
+        self.reg_menc = \
148
+        re.compile('''.(\d+\.*\d*)s.*\((.\d+)%.*\s+(\d+)mb''')
149
+        self.reg_duration = \
150
+        re.compile('''Duration:.*(\d+:\d+:\d+\.\d+)''')
151
+        
152
+        # Install Local
153
+        self.install_locale()
154
+               
155
+        Gtk.Window.__init__(self)
156
+        #self.set_position(Gtk.WindowPosition.CENTER)
157
+        self.set_title(_('Curlew'))
158
+        self.set_size_request(730, -1)
159
+        self.set_icon_name('curlew')
160
+        
161
+        #--- Global vbox
162
+        vbox_global = Gtk.Box(spacing=6, orientation=Gtk.Orientation.VERTICAL)
163
+        self.add(vbox_global)
164
+        
165
+        #--- Toolbar
166
+        toolbar = Gtk.Toolbar()
167
+        toolbar.set_style(Gtk.ToolbarStyle.ICONS)
168
+        toolbar.set_icon_size(Gtk.IconSize.DIALOG)
169
+        toolbar.get_style_context().add_class(Gtk.STYLE_CLASS_PRIMARY_TOOLBAR);
170
+        vbox_global.pack_start(toolbar, False, True, 0)
171
+        
172
+        
173
+        #--- ToolButtons
174
+        # Add file toolbutton
175
+        self.add_file_tb = CustomToolButton('add-file', _('Add File'),
176
+                                       _('Add files'),
177
+                                       self.tb_add_file_cb, toolbar)
178
+        # Add folder toolbutton
179
+        self.add_folder_tb = CustomToolButton('add-folder', _('Add Folder'),
180
+                                       _('Add folders'),
181
+                                       self.tb_add_folder_cb, toolbar)
182
+        
183
+        # Remove toolbutton
184
+        self.remove_tb = CustomToolButton('remove', _('Remove'),
185
+                                          _('Remove files'),
186
+                                          self.tb_remove_cb, toolbar)
187
+        
188
+        # Clear toolbutton
189
+        self.clear_tb = CustomToolButton('clear', _('Clear'),
190
+                                         _('Clear files list'),
191
+                                         self.tb_clear_cb, toolbar)
192
+        
193
+        # Separator
194
+        toolbar.insert(Gtk.SeparatorToolItem(), -1)
195
+        
196
+        # Convert toolbutton
197
+        self.convert_tb = CustomToolButton('convert', _('Convert'),
198
+                                           _('Start Conversion'),
199
+                                           self.convert_cb, toolbar)
200
+        
201
curlew-0.1.22.3.tar.gz/Curlew/customwidgets.py Added
201
 
1
@@ -0,0 +1,245 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk
23
+from os.path import join
24
+
25
+
26
+class SpinsFrame(Gtk.Frame):
27
+    '''4 SpinButton collection'''
28
+    def __init__(self, title):
29
+        Gtk.Frame.__init__(self)
30
+        
31
+        self._top = 0
32
+        self._bottom = 0
33
+        self._left = 0
34
+        self._right = 0
35
+        self._sum = 0
36
+        
37
+        hbox = Gtk.Box(sensitive=False, spacing=4, border_width=4)
38
+        self.add(hbox)
39
+        
40
+        self.check_btn = Gtk.CheckButton(title)
41
+        self.set_label_widget(self.check_btn)
42
+        
43
+        # Adjustments
44
+        adj_top    = Gtk.Adjustment(0, 0, 10000, 1)
45
+        adj_bottom = Gtk.Adjustment(0, 0, 10000, 1)
46
+        adj_left   = Gtk.Adjustment(0, 0, 10000, 1)
47
+        adj_right  = Gtk.Adjustment(0, 0, 10000, 1)
48
+        
49
+        # Top spin
50
+        self.spin_top = Gtk.SpinButton(adjustment=adj_top)
51
+        self.spin_top.set_numeric(True)
52
+        hbox.pack_start(Gtk.Label(_('Top')), False, False, 0)
53
+        hbox.pack_start(self.spin_top, False, False, 0)
54
+        
55
+        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
56
+        
57
+        # bottom spin
58
+        self.spin_bottom = Gtk.SpinButton(adjustment=adj_bottom)
59
+        self.spin_bottom.set_numeric(True)
60
+        hbox.pack_start(Gtk.Label(_('Bottom')), False, False, 0)
61
+        hbox.pack_start(self.spin_bottom, False, False, 0)
62
+        
63
+        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
64
+        
65
+        # Left Spin
66
+        self.spin_left = Gtk.SpinButton(adjustment=adj_left)
67
+        self.spin_left.set_numeric(True)
68
+        hbox.pack_start(Gtk.Label(_('Left')), False, False, 0)
69
+        hbox.pack_start(self.spin_left, False, False, 0)
70
+        
71
+        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
72
+        
73
+        # Right spin
74
+        self.spin_right = Gtk.SpinButton(adjustment=adj_right)
75
+        self.spin_right.set_numeric(True)
76
+        hbox.pack_start(Gtk.Label(_('Right')), False, False, 0)
77
+        hbox.pack_start(self.spin_right, False, False, 0)
78
+        
79
+        
80
+        # Connection
81
+        self.spin_top.connect('value-changed', self._on_spins_changed)
82
+        self.spin_bottom.connect('value-changed', self._on_spins_changed)
83
+        self.spin_left.connect('value-changed', self._on_spins_changed)
84
+        self.spin_right.connect('value-changed', self._on_spins_changed)
85
+        self.check_btn.connect('toggled', self._on_check_cb, hbox)
86
+    
87
+    def _on_check_cb(self, check_btn, hbox):
88
+        hbox.set_sensitive(check_btn.get_active())
89
+    
90
+    def _on_spins_changed(self, spin):
91
+        self._top = self.spin_top.get_value_as_int()
92
+        self._bottom = self.spin_bottom.get_value_as_int()
93
+        self._left = self.spin_left.get_value_as_int()
94
+        self._right = self.spin_right.get_value_as_int()
95
+        
96
+        self._sum = self._top + self._bottom + self._left + self._right
97
+    
98
+    def get_active(self):
99
+        return self.check_btn.get_active() and self._sum != 0
100
+    
101
+    def get_crop(self):
102
+        return 'crop=iw-{}:ih-{}:{}:{}'.format(self._left+self._right,
103
+                                               self._top+self._bottom,
104
+                                               self._left, self._top)
105
+    
106
+    def get_pad(self):
107
+        return 'pad=iw+{}:ih+{}:{}:{}'.format(self._left+self._right,
108
+                                               self._top+self._bottom,
109
+                                               self._left, self._top)
110
+    
111
+    
112
+class CustomToolButton(Gtk.ToolButton):
113
+    def __init__(self, name, label, tooltip, callback, toolbar):
114
+        
115
+        Gtk.ToolButton.__init__(self)
116
+        self._name = name + '.png'
117
+        self.set_tooltip_markup(tooltip)
118
+        self.set_label(label)
119
+        self.connect('clicked', callback)
120
+        self.set_is_important(True)
121
+        toolbar.insert(self, -1)
122
+    
123
+    def set_icon(self, path):
124
+        image_path = join(path, self._name)
125
+        image = Gtk.Image.new_from_file(image_path)
126
+        self.set_icon_widget(image)
127
+        
128
+        
129
+class CustomHScale(Gtk.HScale):
130
+    def __init__(self, container, def_value, min_value, max_value, step=1):
131
+        Gtk.HScale.__init__(self)
132
+        container.pack_start(self, True, True, 0)
133
+        adj = Gtk.Adjustment(def_value, min_value, max_value, step)
134
+        self.set_adjustment(adj)
135
+        self.set_value_pos(Gtk.PositionType.RIGHT)
136
+        self.set_digits(0)
137
+        
138
+
139
+class LabeledHBox(Gtk.Box):
140
+    def __init__(self, label, container=None):
141
+        ''' hbox with label'''
142
+        Gtk.Box.__init__(self, spacing=4)
143
+        _label = Gtk.Label(label, use_markup=True)
144
+        _label.set_alignment(0, 0.5)
145
+        self.pack_start(_label, False, False, 0)
146
+        if container != None:
147
+            container.pack_start(self, False, False, 0)
148
+
149
+
150
+class LabeledGrid(Gtk.Grid):
151
+    def __init__(self, container):
152
+        super(LabeledGrid, self).__init__()
153
+        self.set_column_spacing(4)
154
+        self.set_row_spacing(4)
155
+        self.set_row_homogeneous(False)
156
+        self._n_childs = 0
157
+        container.pack_start(self, False, False, 0)
158
+        
159
+    def append_row(self, label, widget, expanded=False):
160
+        _label = Gtk.Label(label, use_markup=True)
161
+        _label.set_alignment(0, 0.5)
162
+        _hbox = Gtk.Box()
163
+        _hbox.set_hexpand(True)
164
+        _hbox.pack_start(widget, expanded, expanded, 0)
165
+        self.attach(_label, 0, self._n_childs, 1, 1)
166
+        self.attach(_hbox, 1, self._n_childs, 1, 1)
167
+        self._n_childs += 1
168
+
169
+
170
+class TimeLayout(Gtk.Box):
171
+    def __init__(self, container, label):
172
+        '''    Time widget    '''
173
+        Gtk.Box.__init__(self)
174
+        self._spin_h = Gtk.SpinButton().new_with_range(0, 5, 1)
175
+        self._spin_m = Gtk.SpinButton().new_with_range(0, 59, 1)
176
+        self._spin_s = Gtk.SpinButton().new_with_range(0, 59, 1)
177
+        
178
+        _label = Gtk.Label(label, use_markup=True)
179
+        _label.set_alignment(0, 0.5)
180
+        _label.set_width_chars(10)
181
+        
182
+        self.pack_start(_label, False, False, 0)
183
+        
184
+        self.pack_start(self._spin_h, False, False, 3)
185
+        self.pack_start(Gtk.Label(label=_('hr')), False, False, 0)
186
+        
187
+        self.pack_start(Gtk.Label(6*' '), False, False, 0)
188
+        
189
+        self.pack_start(self._spin_m, False, False, 3)
190
+        self.pack_start(Gtk.Label(label=_('min')), False, False, 0)
191
+        
192
+        self.pack_start(Gtk.Label(6*' '), False, False, 0)
193
+        
194
+        self.pack_start(self._spin_s, False, False, 3)
195
+        self.pack_start(Gtk.Label(label=_('sec')), False, False, 0)
196
+        
197
+        container.pack_start(self, False, False, 0)
198
+    
199
+    def set_duration(self, duration):
200
+        ''' Set duration in seconds '''
201
curlew-0.1.22.3.tar.gz/Curlew/favdialog.py Added
107
 
1
@@ -0,0 +1,105 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk, Gdk
23
+import cPickle
24
+
25
+class Favorite(Gtk.Dialog):
26
+    def __init__(self, prnt, fav_list):
27
+        Gtk.Dialog.__init__(self, parent=prnt)
28
+        self.set_title(_('Favorite list'))
29
+        self.set_icon_name('curlew')
30
+        self.set_border_width(4)
31
+        self.set_size_request(350, 280)
32
+        self.store = Gtk.ListStore(str)
33
+        self.list_view = Gtk.TreeView(self.store)
34
+        self.list_view.connect("key-press-event", self.on_key_press)
35
+        
36
+        cell = Gtk.CellRendererText()
37
+        col = Gtk.TreeViewColumn(_("Format"), cell, text=0)
38
+        self.list_view.append_column(col)
39
+        
40
+        hbox = Gtk.Box(spacing=6, orientation=Gtk.Orientation.HORIZONTAL)
41
+        
42
+        scroll = Gtk.ScrolledWindow()
43
+        scroll.set_shadow_type(Gtk.ShadowType.IN)
44
+        scroll.add(self.list_view)
45
+        
46
+        hbox.pack_start(scroll, True, True, 0)
47
+        
48
+        vbox_tool = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
49
+        hbox.pack_start(vbox_tool, False, False, 0)
50
+        
51
+        btn_delete = Gtk.Button()
52
+        btn_delete.set_image(Gtk.Image.new_from_stock(Gtk.STOCK_REMOVE, Gtk.IconSize.MENU))
53
+        btn_delete.connect('clicked', self.delete_item)
54
+        vbox_tool.pack_end(btn_delete, False, False, 0)
55
+        
56
+        btn_up = Gtk.Button()
57
+        btn_up.set_image(Gtk.Image.new_from_stock(Gtk.STOCK_GO_UP, Gtk.IconSize.MENU))
58
+        btn_up.connect('clicked', self.go_up)
59
+        vbox_tool.pack_start(btn_up, False, False, 0)
60
+        
61
+        btn_down = Gtk.Button()
62
+        btn_down.set_image(Gtk.Image.new_from_stock(Gtk.STOCK_GO_DOWN, Gtk.IconSize.MENU))
63
+        btn_down.connect('clicked', self.go_down)
64
+        vbox_tool.pack_start(btn_down, False, False, 0)
65
+        
66
+        self.vbox.pack_start(hbox, True, True, 0)
67
+        
68
+        self.add_button(Gtk.STOCK_OK, Gtk.ResponseType.OK)
69
+        
70
+        # load
71
+        for fformat in fav_list:
72
+            self.store.append((fformat,))
73
+        
74
+        self.show_all()
75
+    
76
+    # Delete Item
77
+    def delete_item(self, *args):
78
+        sele = self.get_selected_iter()
79
+        if sele:
80
+            self.store.remove(sele)
81
+    
82
+    def go_up(self, widget):
83
+        sel_iter = self.get_selected_iter()
84
+        if sel_iter:
85
+            self.store.move_before(sel_iter, self.store.iter_previous(sel_iter))
86
+    
87
+    def go_down(self, widget):
88
+        sel_iter = self.get_selected_iter()
89
+        if sel_iter:
90
+            self.store.move_after(sel_iter, self.store.iter_next(sel_iter))
91
+    
92
+    def get_selected_iter(self):
93
+        return self.list_view.get_selection().get_selected()[1]
94
+    
95
+    def save(self, file_name):
96
+        fav_list = []
97
+        for row in self.store:
98
+            fav_list.append(row[0])
99
+        favfile = open(file_name, "wb")
100
+        cPickle.dump(fav_list, favfile)
101
+        favfile.close()
102
+    
103
+    def on_key_press(self, widget, event):
104
+        if event.keyval == Gdk.KEY_Delete:
105
+            self.delete_item()
106
+    
107
curlew-0.1.22.3.tar.gz/Curlew/fileinfos.py Added
60
 
1
@@ -0,0 +1,57 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+from gi.repository import Gtk, Pango
22
+from subprocess import check_output
23
+
24
+class FileInfos(Gtk.Dialog):
25
+    def __init__(self, prnt, file_name):
26
+        Gtk.Dialog.__init__(self, parent=prnt)
27
+        self.set_title(_("File informations"))
28
+        self.set_size_request(580, 450)
29
+        self.set_border_width(6)
30
+        
31
+        txt_info = Gtk.TextView()
32
+        txt_info.set_editable(False)
33
+        txt_info.set_cursor_visible(False)
34
+        txt_info.set_border_width(8)
35
+        
36
+        scroll = Gtk.ScrolledWindow()
37
+        scroll.set_shadow_type(Gtk.ShadowType.IN)
38
+        scroll.add(txt_info)
39
+        self.vbox.pack_start(scroll, True, True, 0)
40
+        
41
+        self.add_button(Gtk.STOCK_CLOSE, Gtk.ResponseType.CLOSE)
42
+        
43
+        font_desc = Pango.FontDescription('Monospace')
44
+        txt_info.override_font(font_desc)
45
+        
46
+        txt_buffer = Gtk.TextBuffer()
47
+        txt_info.set_buffer(txt_buffer)
48
+        
49
+        # Show info        
50
+        buf = check_output('mediainfo "{}"'.format(file_name), shell=True)
51
+        txt_buffer.set_text(buf.strip())
52
+        
53
+    
54
+    
55
+    def show_dialog(self):
56
+        self.show_all()
57
+        self.run()
58
+        self.destroy()
59
\ No newline at end of file
60
curlew-0.1.22.3.tar.gz/Curlew/formats.cfg Added
201
 
1
@@ -0,0 +1,1771 @@
2
+[MP3 Audio]
3
+encoder = f
4
+type = audio
5
+ab = 32k 64k 96k 128k 196k 256k
6
+afreq = 44100 8000 16000 22050 32000
7
+ach = default 2 1
8
+acodec = libmp3lame copy
9
+def_ab = 128k
10
+ff = mp3
11
+ext = mp3
12
+
13
+[Ac3 DVD - 192kbps Stereo]
14
+type = audio
15
+encoder = f
16
+ab = 192k
17
+afreq = 48000
18
+ach = 2
19
+acodec = ac3
20
+ff = ac3
21
+ext = ac3
22
+
23
+[Ac3 DVD - 384kbps Stereo]
24
+type = audio
25
+encoder = f
26
+ab = 384k
27
+afreq = 48000
28
+ach = 2
29
+acodec = ac3
30
+ff = ac3
31
+ext = ac3
32
+
33
+[MPEG4 Audio (m4a)]
34
+encoder = f
35
+type = audio
36
+ab = 112k
37
+afreq = 48000
38
+ach = default 2
39
+acodec = libvo_aacenc aac
40
+ext = m4a
41
+
42
+[CDMA Phone Audio (3g2)]
43
+type = audio
44
+encoder = f
45
+ab = 128k
46
+ach = default
47
+afreq = 22050
48
+acodec = libvo_aacenc aac
49
+ff = 3g2
50
+ext = 3g2
51
+
52
+[Wav for CD]
53
+type = presets
54
+encoder = f
55
+cmd = -vn -ar 44100
56
+ext = wav
57
+
58
+[Wave Audio]
59
+encoder = f
60
+type = audio
61
+ab = 1000k 1200k 1411k 1500k 1600k
62
+afreq = 44100 8000 16000 22050 32000
63
+ach = default 2 1
64
+acodec = pcm_s16le pcm_u8 adpcm_ms adpcm_ima_wav
65
+def_ab = 1200k
66
+ff = wav
67
+ext = wav
68
+
69
+[Window Media Audio]
70
+encoder = f
71
+type = audio
72
+ab = 16k 32k 64k 128k 192k 256k
73
+afreq = 44100 8000 16000 22050 32000
74
+ach = default 2 1
75
+acodec = wmav2 wmav1
76
+def_ab = 128k
77
+ff = asf
78
+ext = wma
79
+
80
+[OGG Vorbis Audio]
81
+encoder = f
82
+type = ogg
83
+ab = default
84
+afreq = 44100 8000 16000 22050 32000
85
+ach = default 2 1
86
+acodec = libvorbis
87
+ff = ogg
88
+ext = ogg
89
+
90
+[OGG Theora Video]
91
+encoder = f
92
+type = ogv
93
+ab = default
94
+afreq = 44100 8000 16000 22050 32000
95
+ach = default 2 1
96
+acodec = flac libvorbis
97
+vb = default
98
+vfps = default
99
+vcodec = libtheora
100
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
101
+vratio = default
102
+extra = -rc_lookahead 16 -keyint_min 0 -g 360 -skip_threshold 0 -level 116
103
+ff = ogg
104
+ext = ogv
105
+
106
+
107
+
108
+[MPEG1 Video]
109
+encoder = f
110
+type = video
111
+ab = 64k 96k 128k 196k 256k
112
+afreq = 44100 8000 16000 22050 32000
113
+ach = default 2 1
114
+acodec = libmp3lame  mp2
115
+def_ab = 128k
116
+vb = 200k 320k 500k 700k 1100k 1500K
117
+def_vb = 1100k
118
+vfps = 30 25
119
+vcodec = mpeg1video
120
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200
121
+vratio = default
122
+ff = mpeg
123
+ext = mpg
124
+extra = -mbd rd -cmp 2 -subcmp 2 -bf 2
125
+
126
+[MPEG2 Video]
127
+encoder = f
128
+type = video
129
+ab = 64k 96k 128k 196k 256k
130
+afreq = 44100 8000 16000 22050 32000
131
+ach = default 2 1
132
+acodec = libmp3lame mp2
133
+def_ab = 128k
134
+vb = 200k 320k 500k 700k 1100k 1500K
135
+def_vb = 1100k
136
+vfps = 30 25
137
+vcodec = mpeg2video
138
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200
139
+vratio = default
140
+ff = mpeg
141
+ext = mpg
142
+extra = -mbd rd -cmp 2 -subcmp 2 -bf 2
143
+
144
+
145
+[AVI Video]
146
+encoder = f
147
+type = video
148
+ab = 64k 96k 128k 196k 256k
149
+afreq = 44100 8000 16000 22050 32000
150
+ach = default 2 1
151
+acodec = libmp3lame mp2
152
+def_ab = 128k
153
+vb = 200k 320k 500k 700k 1100k 1500K
154
+def_vb = 1100k
155
+vfps = 30 25
156
+vcodec = msmpeg4 msmpeg4v2 libxvid mpeg4
157
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
158
+vratio = default 1:1 4:3 5:4 16:9
159
+ff = avi
160
+ext = avi
161
+
162
+[MP4 Video]
163
+encoder = f
164
+type = video
165
+ab = 64k 96k 128k 196k 256k
166
+afreq = 44100 8000 16000 22050 32000
167
+ach = default 2 1
168
+acodec = libvo_aacenc aac
169
+def_ab = 128k
170
+vb = 200k 320k 500k 700k 1100k 1500K
171
+def_vb = 1100k
172
+vfps = 30 25
173
+vcodec = mpeg4
174
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
175
+vratio = 4:3 1:1 4:3 5:4 16:9
176
+ff = mp4
177
+ext = mp4
178
+
179
+[Flash Video (FLV)]
180
+encoder = f
181
+type = video
182
+ab = 64k 96k 128k 196k 256k
183
+afreq = 44100 8000 16000 22050 32000
184
+ach = default 2 1
185
+acodec = libmp3lame
186
+def_ab = 128k
187
+vb = 200k 320k 500k 700k 1100k 1500K
188
+def_vb = 1100k
189
+vfps = 25
190
+vcodec = flv
191
+vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
192
+vratio = default 1:1 4:3 5:4 16:9
193
+ff = flv
194
+ext = flv
195
+
196
+[Windows Media Video]
197
+encoder = f
198
+type = video
199
+ab = 64k 96k 128k 196k 256k
200
+afreq = 44100 8000 16000 22050 32000
201
curlew-0.1.22.3.tar.gz/Curlew/functions.py Added
66
 
1
@@ -0,0 +1,64 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk
23
+
24
+def show_message(parent, 
25
+                 message, 
26
+                 message_type, 
27
+                 button_type=Gtk.ButtonsType.CLOSE):
28
+    ''' Show custom message dialog'''
29
+    mess_dlg = Gtk.MessageDialog(parent,
30
+                             Gtk.DialogFlags.MODAL,
31
+                             message_type,
32
+                             button_type)
33
+    mess_dlg.set_markup(message)
34
+    if not parent:
35
+        mess_dlg.set_keep_above(True)
36
+    resp = mess_dlg.run()
37
+    mess_dlg.destroy()
38
+    return resp
39
+
40
+def get_format_size(size):
41
+    ''' formating file size '''
42
+    size_str = ''
43
+    if 0 <= size <= 1024:
44
+        size_str = '{:.2f}'.format(size) + _(' KB')
45
+    elif 1024 <= size < 1024 * 1024:
46
+        e_size = size / 1024.0
47
+        size_str = '{:.2f}'.format(e_size) + _(' MB')
48
+    elif size >= 1024 * 1024:
49
+        e_size = size / 1048576.0
50
+        size_str = '{:.2f}'.format(e_size) + _(' GB')
51
+    return size_str
52
+
53
+
54
+def duration_to_time(duration):
55
+    ''' Convert duration (sec) to time 0:00:00 '''
56
+    if duration < 0: duration = 0
57
+    return '{:.0f}:{:02.0f}:{:02.0f}'.format(
58
+                                             duration/3600,
59
+                                             (duration%3600)/60,
60
+                                             (duration%3600)%60
61
+                                             )
62
+def time_to_duration(time):
63
+    ''' Convert time like 0:00:00.00 to duration (sec)'''
64
+    times = time.split(':')
65
+    return int(times[0])*3600 + int(times[1])*60 + float(times[2])
66
curlew-0.1.22.3.tar.gz/Curlew/icons Added
2
 
1
+(directory)
2
curlew-0.1.22.3.tar.gz/Curlew/icons/Default Added
2
 
1
+(directory)
2
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/about.svg Added
198
 
1
@@ -0,0 +1,196 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   width="48px"
15
+   height="48px"
16
+   id="svg3692"
17
+   version="1.1"
18
+   inkscape:version="0.47 r22583"
19
+   sodipodi:docname="help-about.svg">
20
+  <defs
21
+     id="defs3694">
22
+    <linearGradient
23
+       inkscape:collect="always"
24
+       xlink:href="#linearGradient8265-821-176-38-919-66-249"
25
+       id="linearGradient3619"
26
+       gradientUnits="userSpaceOnUse"
27
+       gradientTransform="translate(2.9799125,-3.1216548)"
28
+       x1="11.566265"
29
+       y1="22.292103"
30
+       x2="15.214532"
31
+       y2="33.95525" />
32
+    <linearGradient
33
+       id="linearGradient8265-821-176-38-919-66-249">
34
+      <stop
35
+         id="stop2687"
36
+         style="stop-color:#ffffff;stop-opacity:0.27450982"
37
+         offset="0" />
38
+      <stop
39
+         id="stop2689"
40
+         style="stop-color:#ffffff;stop-opacity:0"
41
+         offset="1" />
42
+    </linearGradient>
43
+    <linearGradient
44
+       inkscape:collect="always"
45
+       xlink:href="#linearGradient3642"
46
+       id="linearGradient3648"
47
+       x1="29.646643"
48
+       y1="2"
49
+       x2="29.646643"
50
+       y2="43.443626"
51
+       gradientUnits="userSpaceOnUse" />
52
+    <linearGradient
53
+       id="linearGradient3642">
54
+      <stop
55
+         style="stop-color:#ffffff;stop-opacity:1;"
56
+         offset="0"
57
+         id="stop3644" />
58
+      <stop
59
+         style="stop-color:#ffffff;stop-opacity:0;"
60
+         offset="1"
61
+         id="stop3646" />
62
+    </linearGradient>
63
+    <radialGradient
64
+       inkscape:collect="always"
65
+       xlink:href="#linearGradient3690"
66
+       id="radialGradient3627"
67
+       gradientUnits="userSpaceOnUse"
68
+       gradientTransform="matrix(0,2.6540647,-3.1628087,0,97.182609,-26.675837)"
69
+       cx="13.138569"
70
+       cy="25.625349"
71
+       fx="13.138569"
72
+       fy="25.625349"
73
+       r="13.931416" />
74
+    <linearGradient
75
+       id="linearGradient3690">
76
+      <stop
77
+         id="stop3692"
78
+         style="stop-color:#ffeb9f;stop-opacity:1"
79
+         offset="0" />
80
+      <stop
81
+         id="stop3694"
82
+         style="stop-color:#ffd57e;stop-opacity:1"
83
+         offset="0.26238" />
84
+      <stop
85
+         id="stop3696"
86
+         style="stop-color:#ffbc43;stop-opacity:1"
87
+         offset="0.66093999" />
88
+      <stop
89
+         id="stop3698"
90
+         style="stop-color:#ff921a;stop-opacity:1"
91
+         offset="1" />
92
+    </linearGradient>
93
+    <linearGradient
94
+       inkscape:collect="always"
95
+       xlink:href="#linearGradient3603"
96
+       id="linearGradient3629"
97
+       gradientUnits="userSpaceOnUse"
98
+       gradientTransform="matrix(1.6508808,0,0,1.6568311,-11.466494,-15.045759)"
99
+       x1="21.483376"
100
+       y1="36.255058"
101
+       x2="21.483376"
102
+       y2="9.5799999" />
103
+    <linearGradient
104
+       id="linearGradient3603">
105
+      <stop
106
+         id="stop3605"
107
+         style="stop-color:#a7651c;stop-opacity:1"
108
+         offset="0" />
109
+      <stop
110
+         id="stop3607"
111
+         style="stop-color:#c8a700;stop-opacity:1"
112
+         offset="1" />
113
+    </linearGradient>
114
+    <linearGradient
115
+       id="linearGradient8838">
116
+      <stop
117
+         id="stop8840"
118
+         style="stop-color:#000000;stop-opacity:1"
119
+         offset="0" />
120
+      <stop
121
+         id="stop8842"
122
+         style="stop-color:#000000;stop-opacity:0"
123
+         offset="1" />
124
+    </linearGradient>
125
+    <radialGradient
126
+       r="10.625"
127
+       fy="4.625"
128
+       fx="62.625"
129
+       cy="4.625"
130
+       cx="62.625"
131
+       gradientTransform="matrix(2.1647059,0,0,0.84705771,-111.56471,35.082353)"
132
+       gradientUnits="userSpaceOnUse"
133
+       id="radialGradient3690"
134
+       xlink:href="#linearGradient8838"
135
+       inkscape:collect="always" />
136
+  </defs>
137
+  <sodipodi:namedview
138
+     id="base"
139
+     pagecolor="#ffffff"
140
+     bordercolor="#666666"
141
+     borderopacity="1.0"
142
+     inkscape:pageopacity="0.0"
143
+     inkscape:pageshadow="2"
144
+     inkscape:zoom="7"
145
+     inkscape:cx="24"
146
+     inkscape:cy="24"
147
+     inkscape:current-layer="layer1"
148
+     showgrid="true"
149
+     inkscape:grid-bbox="true"
150
+     inkscape:document-units="px"
151
+     inkscape:window-width="603"
152
+     inkscape:window-height="484"
153
+     inkscape:window-x="417"
154
+     inkscape:window-y="162"
155
+     inkscape:window-maximized="0" />
156
+  <metadata
157
+     id="metadata3697">
158
+    <rdf:RDF>
159
+      <cc:Work
160
+         rdf:about="">
161
+        <dc:format>image/svg+xml</dc:format>
162
+        <dc:type
163
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
164
+        <dc:title></dc:title>
165
+      </cc:Work>
166
+    </rdf:RDF>
167
+  </metadata>
168
+  <g
169
+     id="layer1"
170
+     inkscape:label="Layer 1"
171
+     inkscape:groupmode="layer">
172
+    <path
173
+       style="opacity:0.3;fill:url(#radialGradient3690);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999988;marker:none;visibility:visible;display:inline;overflow:visible"
174
+       id="path8836"
175
+       d="m 47,39 c 0,4.970563 -10.297453,9 -23,9 -12.702548,0 -23,-4.029437 -23,-9 0,-4.970563 10.297452,-9 23,-9 12.702547,0 23,4.029437 23,9 l 0,0 z" />
176
+    <path
177
+       style="fill:url(#radialGradient3627);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3629);stroke-width:0.9922713;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
178
+       id="path1307"
179
+       d="m 23.999999,1.4961347 c 1.518797,0 6.415369,12.2754723 7.644103,13.1714173 1.228732,0.895944 14.374596,1.776317 14.843931,3.225986 0.469334,1.449669 -9.650283,9.916699 -10.119617,11.366368 -0.469334,1.449669 2.758685,14.269241 1.529951,15.165186 -1.228733,0.895944 -12.379571,-6.146615 -13.89837,-6.146615 -1.518797,0 -12.669635,7.042559 -13.898369,6.146615 C 8.8728956,43.529147 12.100914,30.709574 11.63158,29.259906 11.162246,27.810237 1.0426298,19.343205 1.5119642,17.893536 1.9812985,16.443869 15.127162,15.563496 16.355896,14.667552 17.584628,13.771607 22.481202,1.4961347 23.999999,1.4961347 z" />
180
+    <path
181
+       style="opacity:0.3;fill:none;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
182
+       id="path11014"
183
+       d="m 36.457966,42.854576 c 0,0 -4.318414,-3.742625 -10.076299,-4.894202" />
184
+    <path
185
+       style="opacity:0.3;fill:none;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
186
+       id="path11985"
187
+       d="m 11.175618,42.854576 c 0,0 4.318413,-3.742625 10.076298,-4.894202" />
188
+    <path
189
+       style="opacity:0.4;fill:none;stroke:url(#linearGradient3648);stroke-width:0.99999994;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
190
+       id="path1309"
191
+       d="m 24,2.5 c 2.255601,4.3171106 4.478429,8.952433 6.73403,13.269542 4.843973,0.789864 10.26201,1.380836 14.771263,2.50542 -3.449934,3.457984 -6.875961,7.131147 -10.325895,10.589132 0.738138,4.805274 1.213021,9.259541 1.95116,14.064815 C 32.742781,40.748952 28.355003,38.568994 23.967226,36.389035 19.579447,38.568994 15.19167,40.748952 10.803892,42.928909 11.542029,38.123635 11.929163,33.581617 12.6673,28.776343 9.2173666,25.318358 5.9355586,21.692246 2.4856257,18.234262 7.329597,17.444398 12.356449,16.559406 17.20042,15.769542 19.456021,11.452433 21.744398,6.8171106 24,2.5 z" />
192
+    <path
193
+       style="opacity:0.8;fill:url(#linearGradient3619);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
194
+       id="path3382"
195
+       d="m 24.023909,2.0218291 c 0,0 4.502337,7.4701031 7.020932,13.3173589 4.843973,0.789864 10.309827,1.404745 14.914715,2.720597 0,0 -2.463879,2.468624 -3.480641,3.487759 0,0 -31.782299,5.712288 -31.782299,5.712288 C 7.7999341,24.283482 4.5120994,21.39468 1.9615429,18.048297 5.5144527,16.97153 12.093455,16.105144 16.937426,15.31528 20.29282,7.4118887 24.023909,2.0218291 24.023909,2.0218291 z" />
196
+  </g>
197
+</svg>
198
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/add-file.svg Added
201
 
1
@@ -0,0 +1,2353 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="add-file.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="11.218374"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="g3440"
52
+     showguides="true"
53
+     inkscape:guide-bbox="true" />
54
+  <defs
55
+     id="defs2606">
56
+    <linearGradient
57
+       id="linearGradient3333"
58
+       y2="609.51"
59
+       gradientUnits="userSpaceOnUse"
60
+       x2="302.86"
61
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
62
+       y1="366.65"
63
+       x1="302.86">
64
+      <stop
65
+         id="stop5050"
66
+         style="stop-opacity:0"
67
+         offset="0" />
68
+      <stop
69
+         id="stop5056"
70
+         offset=".5" />
71
+      <stop
72
+         id="stop5052"
73
+         style="stop-opacity:0"
74
+         offset="1" />
75
+    </linearGradient>
76
+    <radialGradient
77
+       id="radialGradient3330"
78
+       xlink:href="#linearGradient5060"
79
+       gradientUnits="userSpaceOnUse"
80
+       cy="486.65"
81
+       cx="605.71"
82
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
83
+       r="117.14" />
84
+    <linearGradient
85
+       id="linearGradient5060">
86
+      <stop
87
+         id="stop5062"
88
+         offset="0" />
89
+      <stop
90
+         id="stop5064"
91
+         style="stop-opacity:0"
92
+         offset="1" />
93
+    </linearGradient>
94
+    <radialGradient
95
+       id="radialGradient3327"
96
+       xlink:href="#linearGradient5060"
97
+       gradientUnits="userSpaceOnUse"
98
+       cy="486.65"
99
+       cx="605.71"
100
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
101
+       r="117.14" />
102
+    <linearGradient
103
+       id="linearGradient3324"
104
+       y2="2.9062"
105
+       gradientUnits="userSpaceOnUse"
106
+       x2="-51.786"
107
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
108
+       y1="50.786"
109
+       x1="-51.786">
110
+      <stop
111
+         id="stop3106"
112
+         style="stop-color:#aaa"
113
+         offset="0" />
114
+      <stop
115
+         id="stop3108"
116
+         style="stop-color:#c8c8c8"
117
+         offset="1" />
118
+    </linearGradient>
119
+    <linearGradient
120
+       id="linearGradient3322"
121
+       y2="47.013"
122
+       gradientUnits="userSpaceOnUse"
123
+       x2="25.132"
124
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
125
+       y1=".98521"
126
+       x1="25.132">
127
+      <stop
128
+         id="stop3602"
129
+         style="stop-color:#f4f4f4"
130
+         offset="0" />
131
+      <stop
132
+         id="stop3604"
133
+         style="stop-color:#dbdbdb"
134
+         offset="1" />
135
+    </linearGradient>
136
+    <radialGradient
137
+       id="radialGradient3319"
138
+       gradientUnits="userSpaceOnUse"
139
+       cy="112.3"
140
+       cx="102"
141
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
142
+       r="139.56">
143
+      <stop
144
+         id="stop41"
145
+         style="stop-color:#b7b8b9"
146
+         offset="0" />
147
+      <stop
148
+         id="stop47"
149
+         style="stop-color:#ececec"
150
+         offset=".18851" />
151
+      <stop
152
+         id="stop49"
153
+         style="stop-color:#fafafa;stop-opacity:0"
154
+         offset=".25718" />
155
+      <stop
156
+         id="stop51"
157
+         style="stop-color:#fff;stop-opacity:0"
158
+         offset=".30111" />
159
+      <stop
160
+         id="stop53"
161
+         style="stop-color:#fafafa;stop-opacity:0"
162
+         offset=".53130" />
163
+      <stop
164
+         id="stop55"
165
+         style="stop-color:#ebecec;stop-opacity:0"
166
+         offset=".84490" />
167
+      <stop
168
+         id="stop57"
169
+         style="stop-color:#e1e2e3;stop-opacity:0"
170
+         offset="1" />
171
+    </radialGradient>
172
+    <linearGradient
173
+       id="linearGradient3316"
174
+       y2="46.017"
175
+       gradientUnits="userSpaceOnUse"
176
+       x2="24"
177
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
178
+       y1="2"
179
+       x1="24">
180
+      <stop
181
+         id="stop3213"
182
+         style="stop-color:#fff"
183
+         offset="0" />
184
+      <stop
185
+         id="stop3215"
186
+         style="stop-color:#fff;stop-opacity:0"
187
+         offset="1" />
188
+    </linearGradient>
189
+    <filter
190
+       id="filter3212"
191
+       y="-.16434"
192
+       width="1.2969"
193
+       x="-.14846"
194
+       height="1.3287">
195
+      <feGaussianBlur
196
+         id="feGaussianBlur3214"
197
+         stdDeviation="0.77391625" />
198
+    </filter>
199
+    <linearGradient
200
+       id="linearGradient3312"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/add-folder.svg Added
201
 
1
@@ -0,0 +1,2428 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="add-folder.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="11.218374"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="layer1-2"
52
+     showguides="true"
53
+     inkscape:guide-bbox="true" />
54
+  <defs
55
+     id="defs2606">
56
+    <linearGradient
57
+       id="linearGradient3333"
58
+       y2="609.51"
59
+       gradientUnits="userSpaceOnUse"
60
+       x2="302.86"
61
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
62
+       y1="366.65"
63
+       x1="302.86">
64
+      <stop
65
+         id="stop5050"
66
+         style="stop-opacity:0"
67
+         offset="0" />
68
+      <stop
69
+         id="stop5056"
70
+         offset=".5" />
71
+      <stop
72
+         id="stop5052"
73
+         style="stop-opacity:0"
74
+         offset="1" />
75
+    </linearGradient>
76
+    <radialGradient
77
+       id="radialGradient3330"
78
+       xlink:href="#linearGradient5060"
79
+       gradientUnits="userSpaceOnUse"
80
+       cy="486.65"
81
+       cx="605.71"
82
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
83
+       r="117.14" />
84
+    <linearGradient
85
+       id="linearGradient5060">
86
+      <stop
87
+         id="stop5062"
88
+         offset="0" />
89
+      <stop
90
+         id="stop5064"
91
+         style="stop-opacity:0"
92
+         offset="1" />
93
+    </linearGradient>
94
+    <radialGradient
95
+       id="radialGradient3327"
96
+       xlink:href="#linearGradient5060"
97
+       gradientUnits="userSpaceOnUse"
98
+       cy="486.65"
99
+       cx="605.71"
100
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
101
+       r="117.14" />
102
+    <linearGradient
103
+       id="linearGradient3324"
104
+       y2="2.9062"
105
+       gradientUnits="userSpaceOnUse"
106
+       x2="-51.786"
107
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
108
+       y1="50.786"
109
+       x1="-51.786">
110
+      <stop
111
+         id="stop3106"
112
+         style="stop-color:#aaa"
113
+         offset="0" />
114
+      <stop
115
+         id="stop3108"
116
+         style="stop-color:#c8c8c8"
117
+         offset="1" />
118
+    </linearGradient>
119
+    <linearGradient
120
+       id="linearGradient3322"
121
+       y2="47.013"
122
+       gradientUnits="userSpaceOnUse"
123
+       x2="25.132"
124
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
125
+       y1=".98521"
126
+       x1="25.132">
127
+      <stop
128
+         id="stop3602"
129
+         style="stop-color:#f4f4f4"
130
+         offset="0" />
131
+      <stop
132
+         id="stop3604"
133
+         style="stop-color:#dbdbdb"
134
+         offset="1" />
135
+    </linearGradient>
136
+    <radialGradient
137
+       id="radialGradient3319"
138
+       gradientUnits="userSpaceOnUse"
139
+       cy="112.3"
140
+       cx="102"
141
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
142
+       r="139.56">
143
+      <stop
144
+         id="stop41"
145
+         style="stop-color:#b7b8b9"
146
+         offset="0" />
147
+      <stop
148
+         id="stop47"
149
+         style="stop-color:#ececec"
150
+         offset=".18851" />
151
+      <stop
152
+         id="stop49"
153
+         style="stop-color:#fafafa;stop-opacity:0"
154
+         offset=".25718" />
155
+      <stop
156
+         id="stop51"
157
+         style="stop-color:#fff;stop-opacity:0"
158
+         offset=".30111" />
159
+      <stop
160
+         id="stop53"
161
+         style="stop-color:#fafafa;stop-opacity:0"
162
+         offset=".53130" />
163
+      <stop
164
+         id="stop55"
165
+         style="stop-color:#ebecec;stop-opacity:0"
166
+         offset=".84490" />
167
+      <stop
168
+         id="stop57"
169
+         style="stop-color:#e1e2e3;stop-opacity:0"
170
+         offset="1" />
171
+    </radialGradient>
172
+    <linearGradient
173
+       id="linearGradient3316"
174
+       y2="46.017"
175
+       gradientUnits="userSpaceOnUse"
176
+       x2="24"
177
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
178
+       y1="2"
179
+       x1="24">
180
+      <stop
181
+         id="stop3213"
182
+         style="stop-color:#fff"
183
+         offset="0" />
184
+      <stop
185
+         id="stop3215"
186
+         style="stop-color:#fff;stop-opacity:0"
187
+         offset="1" />
188
+    </linearGradient>
189
+    <filter
190
+       id="filter3212"
191
+       y="-.16434"
192
+       width="1.2969"
193
+       x="-.14846"
194
+       height="1.3287">
195
+      <feGaussianBlur
196
+         id="feGaussianBlur3214"
197
+         stdDeviation="0.77391625" />
198
+    </filter>
199
+    <linearGradient
200
+       id="linearGradient3312"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/add.svg Added
201
 
1
@@ -0,0 +1,1548 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.3.1 r9886"
19
+   sodipodi:docname="add.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="24"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-4"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="g3652" />
52
+  <defs
53
+     id="defs2606">
54
+    <linearGradient
55
+       id="linearGradient3333"
56
+       y2="609.51"
57
+       gradientUnits="userSpaceOnUse"
58
+       x2="302.86"
59
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
60
+       y1="366.65"
61
+       x1="302.86">
62
+      <stop
63
+         id="stop5050"
64
+         style="stop-opacity:0"
65
+         offset="0" />
66
+      <stop
67
+         id="stop5056"
68
+         offset=".5" />
69
+      <stop
70
+         id="stop5052"
71
+         style="stop-opacity:0"
72
+         offset="1" />
73
+    </linearGradient>
74
+    <radialGradient
75
+       id="radialGradient3330"
76
+       xlink:href="#linearGradient5060"
77
+       gradientUnits="userSpaceOnUse"
78
+       cy="486.65"
79
+       cx="605.71"
80
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
81
+       r="117.14" />
82
+    <linearGradient
83
+       id="linearGradient5060">
84
+      <stop
85
+         id="stop5062"
86
+         offset="0" />
87
+      <stop
88
+         id="stop5064"
89
+         style="stop-opacity:0"
90
+         offset="1" />
91
+    </linearGradient>
92
+    <radialGradient
93
+       id="radialGradient3327"
94
+       xlink:href="#linearGradient5060"
95
+       gradientUnits="userSpaceOnUse"
96
+       cy="486.65"
97
+       cx="605.71"
98
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
99
+       r="117.14" />
100
+    <linearGradient
101
+       id="linearGradient3324"
102
+       y2="2.9062"
103
+       gradientUnits="userSpaceOnUse"
104
+       x2="-51.786"
105
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
106
+       y1="50.786"
107
+       x1="-51.786">
108
+      <stop
109
+         id="stop3106"
110
+         style="stop-color:#aaa"
111
+         offset="0" />
112
+      <stop
113
+         id="stop3108"
114
+         style="stop-color:#c8c8c8"
115
+         offset="1" />
116
+    </linearGradient>
117
+    <linearGradient
118
+       id="linearGradient3322"
119
+       y2="47.013"
120
+       gradientUnits="userSpaceOnUse"
121
+       x2="25.132"
122
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
123
+       y1=".98521"
124
+       x1="25.132">
125
+      <stop
126
+         id="stop3602"
127
+         style="stop-color:#f4f4f4"
128
+         offset="0" />
129
+      <stop
130
+         id="stop3604"
131
+         style="stop-color:#dbdbdb"
132
+         offset="1" />
133
+    </linearGradient>
134
+    <radialGradient
135
+       id="radialGradient3319"
136
+       gradientUnits="userSpaceOnUse"
137
+       cy="112.3"
138
+       cx="102"
139
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
140
+       r="139.56">
141
+      <stop
142
+         id="stop41"
143
+         style="stop-color:#b7b8b9"
144
+         offset="0" />
145
+      <stop
146
+         id="stop47"
147
+         style="stop-color:#ececec"
148
+         offset=".18851" />
149
+      <stop
150
+         id="stop49"
151
+         style="stop-color:#fafafa;stop-opacity:0"
152
+         offset=".25718" />
153
+      <stop
154
+         id="stop51"
155
+         style="stop-color:#fff;stop-opacity:0"
156
+         offset=".30111" />
157
+      <stop
158
+         id="stop53"
159
+         style="stop-color:#fafafa;stop-opacity:0"
160
+         offset=".53130" />
161
+      <stop
162
+         id="stop55"
163
+         style="stop-color:#ebecec;stop-opacity:0"
164
+         offset=".84490" />
165
+      <stop
166
+         id="stop57"
167
+         style="stop-color:#e1e2e3;stop-opacity:0"
168
+         offset="1" />
169
+    </radialGradient>
170
+    <linearGradient
171
+       id="linearGradient3316"
172
+       y2="46.017"
173
+       gradientUnits="userSpaceOnUse"
174
+       x2="24"
175
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
176
+       y1="2"
177
+       x1="24">
178
+      <stop
179
+         id="stop3213"
180
+         style="stop-color:#fff"
181
+         offset="0" />
182
+      <stop
183
+         id="stop3215"
184
+         style="stop-color:#fff;stop-opacity:0"
185
+         offset="1" />
186
+    </linearGradient>
187
+    <filter
188
+       id="filter3212"
189
+       y="-.16434"
190
+       width="1.2969"
191
+       x="-.14846"
192
+       height="1.3287">
193
+      <feGaussianBlur
194
+         id="feGaussianBlur3214"
195
+         stdDeviation="0.77391625" />
196
+    </filter>
197
+    <linearGradient
198
+       id="linearGradient3312"
199
+       y2="5.4565"
200
+       gradientUnits="userSpaceOnUse"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/clear.svg Added
201
 
1
@@ -0,0 +1,2833 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="clear.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="10.412809"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="g3652"
52
+     showguides="true"
53
+     inkscape:guide-bbox="true" />
54
+  <defs
55
+     id="defs2606">
56
+    <linearGradient
57
+       id="linearGradient3333"
58
+       y2="609.51"
59
+       gradientUnits="userSpaceOnUse"
60
+       x2="302.86"
61
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
62
+       y1="366.65"
63
+       x1="302.86">
64
+      <stop
65
+         id="stop5050"
66
+         style="stop-opacity:0"
67
+         offset="0" />
68
+      <stop
69
+         id="stop5056"
70
+         offset=".5" />
71
+      <stop
72
+         id="stop5052"
73
+         style="stop-opacity:0"
74
+         offset="1" />
75
+    </linearGradient>
76
+    <radialGradient
77
+       id="radialGradient3330"
78
+       xlink:href="#linearGradient5060"
79
+       gradientUnits="userSpaceOnUse"
80
+       cy="486.65"
81
+       cx="605.71"
82
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
83
+       r="117.14" />
84
+    <linearGradient
85
+       id="linearGradient5060">
86
+      <stop
87
+         id="stop5062"
88
+         offset="0" />
89
+      <stop
90
+         id="stop5064"
91
+         style="stop-opacity:0"
92
+         offset="1" />
93
+    </linearGradient>
94
+    <radialGradient
95
+       id="radialGradient3327"
96
+       xlink:href="#linearGradient5060"
97
+       gradientUnits="userSpaceOnUse"
98
+       cy="486.65"
99
+       cx="605.71"
100
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
101
+       r="117.14" />
102
+    <linearGradient
103
+       id="linearGradient3324"
104
+       y2="2.9062"
105
+       gradientUnits="userSpaceOnUse"
106
+       x2="-51.786"
107
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
108
+       y1="50.786"
109
+       x1="-51.786">
110
+      <stop
111
+         id="stop3106"
112
+         style="stop-color:#aaa"
113
+         offset="0" />
114
+      <stop
115
+         id="stop3108"
116
+         style="stop-color:#c8c8c8"
117
+         offset="1" />
118
+    </linearGradient>
119
+    <linearGradient
120
+       id="linearGradient3322"
121
+       y2="47.013"
122
+       gradientUnits="userSpaceOnUse"
123
+       x2="25.132"
124
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
125
+       y1=".98521"
126
+       x1="25.132">
127
+      <stop
128
+         id="stop3602"
129
+         style="stop-color:#f4f4f4"
130
+         offset="0" />
131
+      <stop
132
+         id="stop3604"
133
+         style="stop-color:#dbdbdb"
134
+         offset="1" />
135
+    </linearGradient>
136
+    <radialGradient
137
+       id="radialGradient3319"
138
+       gradientUnits="userSpaceOnUse"
139
+       cy="112.3"
140
+       cx="102"
141
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
142
+       r="139.56">
143
+      <stop
144
+         id="stop41"
145
+         style="stop-color:#b7b8b9"
146
+         offset="0" />
147
+      <stop
148
+         id="stop47"
149
+         style="stop-color:#ececec"
150
+         offset=".18851" />
151
+      <stop
152
+         id="stop49"
153
+         style="stop-color:#fafafa;stop-opacity:0"
154
+         offset=".25718" />
155
+      <stop
156
+         id="stop51"
157
+         style="stop-color:#fff;stop-opacity:0"
158
+         offset=".30111" />
159
+      <stop
160
+         id="stop53"
161
+         style="stop-color:#fafafa;stop-opacity:0"
162
+         offset=".53130" />
163
+      <stop
164
+         id="stop55"
165
+         style="stop-color:#ebecec;stop-opacity:0"
166
+         offset=".84490" />
167
+      <stop
168
+         id="stop57"
169
+         style="stop-color:#e1e2e3;stop-opacity:0"
170
+         offset="1" />
171
+    </radialGradient>
172
+    <linearGradient
173
+       id="linearGradient3316"
174
+       y2="46.017"
175
+       gradientUnits="userSpaceOnUse"
176
+       x2="24"
177
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
178
+       y1="2"
179
+       x1="24">
180
+      <stop
181
+         id="stop3213"
182
+         style="stop-color:#fff"
183
+         offset="0" />
184
+      <stop
185
+         id="stop3215"
186
+         style="stop-color:#fff;stop-opacity:0"
187
+         offset="1" />
188
+    </linearGradient>
189
+    <filter
190
+       id="filter3212"
191
+       y="-.16434"
192
+       width="1.2969"
193
+       x="-.14846"
194
+       height="1.3287">
195
+      <feGaussianBlur
196
+         id="feGaussianBlur3214"
197
+         stdDeviation="0.77391625" />
198
+    </filter>
199
+    <linearGradient
200
+       id="linearGradient3312"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/convert.svg Added
201
 
1
@@ -0,0 +1,2126 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="convert.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="-6.2355275"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="g3652" />
52
+  <defs
53
+     id="defs2606">
54
+    <linearGradient
55
+       id="linearGradient3333"
56
+       y2="609.51"
57
+       gradientUnits="userSpaceOnUse"
58
+       x2="302.86"
59
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
60
+       y1="366.65"
61
+       x1="302.86">
62
+      <stop
63
+         id="stop5050"
64
+         style="stop-opacity:0"
65
+         offset="0" />
66
+      <stop
67
+         id="stop5056"
68
+         offset=".5" />
69
+      <stop
70
+         id="stop5052"
71
+         style="stop-opacity:0"
72
+         offset="1" />
73
+    </linearGradient>
74
+    <radialGradient
75
+       id="radialGradient3330"
76
+       xlink:href="#linearGradient5060"
77
+       gradientUnits="userSpaceOnUse"
78
+       cy="486.65"
79
+       cx="605.71"
80
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
81
+       r="117.14" />
82
+    <linearGradient
83
+       id="linearGradient5060">
84
+      <stop
85
+         id="stop5062"
86
+         offset="0" />
87
+      <stop
88
+         id="stop5064"
89
+         style="stop-opacity:0"
90
+         offset="1" />
91
+    </linearGradient>
92
+    <radialGradient
93
+       id="radialGradient3327"
94
+       xlink:href="#linearGradient5060"
95
+       gradientUnits="userSpaceOnUse"
96
+       cy="486.65"
97
+       cx="605.71"
98
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
99
+       r="117.14" />
100
+    <linearGradient
101
+       id="linearGradient3324"
102
+       y2="2.9062"
103
+       gradientUnits="userSpaceOnUse"
104
+       x2="-51.786"
105
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
106
+       y1="50.786"
107
+       x1="-51.786">
108
+      <stop
109
+         id="stop3106"
110
+         style="stop-color:#aaa"
111
+         offset="0" />
112
+      <stop
113
+         id="stop3108"
114
+         style="stop-color:#c8c8c8"
115
+         offset="1" />
116
+    </linearGradient>
117
+    <linearGradient
118
+       id="linearGradient3322"
119
+       y2="47.013"
120
+       gradientUnits="userSpaceOnUse"
121
+       x2="25.132"
122
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
123
+       y1=".98521"
124
+       x1="25.132">
125
+      <stop
126
+         id="stop3602"
127
+         style="stop-color:#f4f4f4"
128
+         offset="0" />
129
+      <stop
130
+         id="stop3604"
131
+         style="stop-color:#dbdbdb"
132
+         offset="1" />
133
+    </linearGradient>
134
+    <radialGradient
135
+       id="radialGradient3319"
136
+       gradientUnits="userSpaceOnUse"
137
+       cy="112.3"
138
+       cx="102"
139
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
140
+       r="139.56">
141
+      <stop
142
+         id="stop41"
143
+         style="stop-color:#b7b8b9"
144
+         offset="0" />
145
+      <stop
146
+         id="stop47"
147
+         style="stop-color:#ececec"
148
+         offset=".18851" />
149
+      <stop
150
+         id="stop49"
151
+         style="stop-color:#fafafa;stop-opacity:0"
152
+         offset=".25718" />
153
+      <stop
154
+         id="stop51"
155
+         style="stop-color:#fff;stop-opacity:0"
156
+         offset=".30111" />
157
+      <stop
158
+         id="stop53"
159
+         style="stop-color:#fafafa;stop-opacity:0"
160
+         offset=".53130" />
161
+      <stop
162
+         id="stop55"
163
+         style="stop-color:#ebecec;stop-opacity:0"
164
+         offset=".84490" />
165
+      <stop
166
+         id="stop57"
167
+         style="stop-color:#e1e2e3;stop-opacity:0"
168
+         offset="1" />
169
+    </radialGradient>
170
+    <linearGradient
171
+       id="linearGradient3316"
172
+       y2="46.017"
173
+       gradientUnits="userSpaceOnUse"
174
+       x2="24"
175
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
176
+       y1="2"
177
+       x1="24">
178
+      <stop
179
+         id="stop3213"
180
+         style="stop-color:#fff"
181
+         offset="0" />
182
+      <stop
183
+         id="stop3215"
184
+         style="stop-color:#fff;stop-opacity:0"
185
+         offset="1" />
186
+    </linearGradient>
187
+    <filter
188
+       id="filter3212"
189
+       y="-.16434"
190
+       width="1.2969"
191
+       x="-.14846"
192
+       height="1.3287">
193
+      <feGaussianBlur
194
+         id="feGaussianBlur3214"
195
+         stdDeviation="0.77391625" />
196
+    </filter>
197
+    <linearGradient
198
+       id="linearGradient3312"
199
+       y2="5.4565"
200
+       gradientUnits="userSpaceOnUse"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/infos.svg Added
201
 
1
@@ -0,0 +1,2482 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="infos.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="9.607244"
47
+     inkscape:cy="18.199934"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="layer1-4" />
52
+  <defs
53
+     id="defs2606">
54
+    <linearGradient
55
+       id="linearGradient3333"
56
+       y2="609.51"
57
+       gradientUnits="userSpaceOnUse"
58
+       x2="302.86"
59
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
60
+       y1="366.65"
61
+       x1="302.86">
62
+      <stop
63
+         id="stop5050"
64
+         style="stop-opacity:0"
65
+         offset="0" />
66
+      <stop
67
+         id="stop5056"
68
+         offset=".5" />
69
+      <stop
70
+         id="stop5052"
71
+         style="stop-opacity:0"
72
+         offset="1" />
73
+    </linearGradient>
74
+    <radialGradient
75
+       id="radialGradient3330"
76
+       xlink:href="#linearGradient5060"
77
+       gradientUnits="userSpaceOnUse"
78
+       cy="486.65"
79
+       cx="605.71"
80
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
81
+       r="117.14" />
82
+    <linearGradient
83
+       id="linearGradient5060">
84
+      <stop
85
+         id="stop5062"
86
+         offset="0" />
87
+      <stop
88
+         id="stop5064"
89
+         style="stop-opacity:0"
90
+         offset="1" />
91
+    </linearGradient>
92
+    <radialGradient
93
+       id="radialGradient3327"
94
+       xlink:href="#linearGradient5060"
95
+       gradientUnits="userSpaceOnUse"
96
+       cy="486.65"
97
+       cx="605.71"
98
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
99
+       r="117.14" />
100
+    <linearGradient
101
+       id="linearGradient3324"
102
+       y2="2.9062"
103
+       gradientUnits="userSpaceOnUse"
104
+       x2="-51.786"
105
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
106
+       y1="50.786"
107
+       x1="-51.786">
108
+      <stop
109
+         id="stop3106"
110
+         style="stop-color:#aaa"
111
+         offset="0" />
112
+      <stop
113
+         id="stop3108"
114
+         style="stop-color:#c8c8c8"
115
+         offset="1" />
116
+    </linearGradient>
117
+    <linearGradient
118
+       id="linearGradient3322"
119
+       y2="47.013"
120
+       gradientUnits="userSpaceOnUse"
121
+       x2="25.132"
122
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
123
+       y1=".98521"
124
+       x1="25.132">
125
+      <stop
126
+         id="stop3602"
127
+         style="stop-color:#f4f4f4"
128
+         offset="0" />
129
+      <stop
130
+         id="stop3604"
131
+         style="stop-color:#dbdbdb"
132
+         offset="1" />
133
+    </linearGradient>
134
+    <radialGradient
135
+       id="radialGradient3319"
136
+       gradientUnits="userSpaceOnUse"
137
+       cy="112.3"
138
+       cx="102"
139
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
140
+       r="139.56">
141
+      <stop
142
+         id="stop41"
143
+         style="stop-color:#b7b8b9"
144
+         offset="0" />
145
+      <stop
146
+         id="stop47"
147
+         style="stop-color:#ececec"
148
+         offset=".18851" />
149
+      <stop
150
+         id="stop49"
151
+         style="stop-color:#fafafa;stop-opacity:0"
152
+         offset=".25718" />
153
+      <stop
154
+         id="stop51"
155
+         style="stop-color:#fff;stop-opacity:0"
156
+         offset=".30111" />
157
+      <stop
158
+         id="stop53"
159
+         style="stop-color:#fafafa;stop-opacity:0"
160
+         offset=".53130" />
161
+      <stop
162
+         id="stop55"
163
+         style="stop-color:#ebecec;stop-opacity:0"
164
+         offset=".84490" />
165
+      <stop
166
+         id="stop57"
167
+         style="stop-color:#e1e2e3;stop-opacity:0"
168
+         offset="1" />
169
+    </radialGradient>
170
+    <linearGradient
171
+       id="linearGradient3316"
172
+       y2="46.017"
173
+       gradientUnits="userSpaceOnUse"
174
+       x2="24"
175
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
176
+       y1="2"
177
+       x1="24">
178
+      <stop
179
+         id="stop3213"
180
+         style="stop-color:#fff"
181
+         offset="0" />
182
+      <stop
183
+         id="stop3215"
184
+         style="stop-color:#fff;stop-opacity:0"
185
+         offset="1" />
186
+    </linearGradient>
187
+    <filter
188
+       id="filter3212"
189
+       y="-.16434"
190
+       width="1.2969"
191
+       x="-.14846"
192
+       height="1.3287">
193
+      <feGaussianBlur
194
+         id="feGaussianBlur3214"
195
+         stdDeviation="0.77391625" />
196
+    </filter>
197
+    <linearGradient
198
+       id="linearGradient3312"
199
+       y2="5.4565"
200
+       gradientUnits="userSpaceOnUse"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/quit.svg Added
201
 
1
@@ -0,0 +1,217 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:svg="http://www.w3.org/2000/svg"
7
+   xmlns="http://www.w3.org/2000/svg"
8
+   xmlns:xlink="http://www.w3.org/1999/xlink"
9
+   version="1.0"
10
+   width="48"
11
+   height="48"
12
+   id="svg3334">
13
+  <defs
14
+     id="defs3336">
15
+    <linearGradient
16
+       id="linearGradient3702">
17
+      <stop
18
+         id="stop3704"
19
+         style="stop-color:black;stop-opacity:0"
20
+         offset="0" />
21
+      <stop
22
+         id="stop3710"
23
+         style="stop-color:black;stop-opacity:1"
24
+         offset="0.5" />
25
+      <stop
26
+         id="stop3706"
27
+         style="stop-color:black;stop-opacity:0"
28
+         offset="1" />
29
+    </linearGradient>
30
+    <linearGradient
31
+       x1="25.058096"
32
+       y1="47.027729"
33
+       x2="25.058096"
34
+       y2="39.999443"
35
+       id="linearGradient2877"
36
+       xlink:href="#linearGradient3702"
37
+       gradientUnits="userSpaceOnUse" />
38
+    <radialGradient
39
+       cx="4.9929786"
40
+       cy="43.5"
41
+       r="2.5"
42
+       fx="4.9929786"
43
+       fy="43.5"
44
+       id="radialGradient2875"
45
+       xlink:href="#linearGradient3688"
46
+       gradientUnits="userSpaceOnUse"
47
+       gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)" />
48
+    <linearGradient
49
+       id="linearGradient3688">
50
+      <stop
51
+         id="stop3690"
52
+         style="stop-color:black;stop-opacity:1"
53
+         offset="0" />
54
+      <stop
55
+         id="stop3692"
56
+         style="stop-color:black;stop-opacity:0"
57
+         offset="1" />
58
+    </linearGradient>
59
+    <radialGradient
60
+       cx="4.9929786"
61
+       cy="43.5"
62
+       r="2.5"
63
+       fx="4.9929786"
64
+       fy="43.5"
65
+       id="radialGradient2873"
66
+       xlink:href="#linearGradient3688"
67
+       gradientUnits="userSpaceOnUse"
68
+       gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)" />
69
+    <linearGradient
70
+       id="linearGradient2490">
71
+      <stop
72
+         id="stop2492"
73
+         style="stop-color:#791235;stop-opacity:1"
74
+         offset="0" />
75
+      <stop
76
+         id="stop2494"
77
+         style="stop-color:#dd3b27;stop-opacity:1"
78
+         offset="1" />
79
+    </linearGradient>
80
+    <linearGradient
81
+       x1="24"
82
+       y1="44"
83
+       x2="24"
84
+       y2="3.8990016"
85
+       id="linearGradient2865"
86
+       xlink:href="#linearGradient2490"
87
+       gradientUnits="userSpaceOnUse"
88
+       gradientTransform="translate(0,0.9674388)" />
89
+    <linearGradient
90
+       id="linearGradient3242">
91
+      <stop
92
+         id="stop3244"
93
+         style="stop-color:#f89b7e;stop-opacity:1"
94
+         offset="0" />
95
+      <stop
96
+         id="stop3246"
97
+         style="stop-color:#e35d4f;stop-opacity:1"
98
+         offset="0.26238" />
99
+      <stop
100
+         id="stop3248"
101
+         style="stop-color:#c6262e;stop-opacity:1"
102
+         offset="0.66093999" />
103
+      <stop
104
+         id="stop3250"
105
+         style="stop-color:#690b2c;stop-opacity:1"
106
+         offset="1" />
107
+    </linearGradient>
108
+    <radialGradient
109
+       cx="12.011247"
110
+       cy="10.423882"
111
+       r="19.99999"
112
+       fx="12.011247"
113
+       fy="10.423882"
114
+       id="radialGradient2863"
115
+       xlink:href="#linearGradient3242"
116
+       gradientUnits="userSpaceOnUse"
117
+       gradientTransform="matrix(5.6341942e-8,1.6800831,-2.423533,1.0380855e-8,44.478401,-5.926735)" />
118
+    <linearGradient
119
+       id="linearGradient3308-4-6">
120
+      <stop
121
+         id="stop3310-1-4"
122
+         style="stop-color:white;stop-opacity:1"
123
+         offset="0" />
124
+      <stop
125
+         id="stop3312-5-3"
126
+         style="stop-color:white;stop-opacity:0"
127
+         offset="1" />
128
+    </linearGradient>
129
+    <linearGradient
130
+       x1="23.99999"
131
+       y1="4.999989"
132
+       x2="23.99999"
133
+       y2="43"
134
+       id="linearGradient2855"
135
+       xlink:href="#linearGradient3308-4-6"
136
+       gradientUnits="userSpaceOnUse"
137
+       gradientTransform="translate(0,0.9674388)" />
138
+  </defs>
139
+  <g
140
+     id="layer1">
141
+    <g
142
+       transform="matrix(1.1,0,0,0.4444449,-2.4000022,25.11107)"
143
+       id="g2036"
144
+       style="display:inline">
145
+      <g
146
+         transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)"
147
+         id="g3712"
148
+         style="opacity:0.4">
149
+        <rect
150
+           width="5"
151
+           height="7"
152
+           x="38"
153
+           y="40"
154
+           id="rect2801"
155
+           style="fill:url(#radialGradient2873);fill-opacity:1;stroke:none" />
156
+        <rect
157
+           width="5"
158
+           height="7"
159
+           x="-10"
160
+           y="-47"
161
+           transform="scale(-1,-1)"
162
+           id="rect3696"
163
+           style="fill:url(#radialGradient2875);fill-opacity:1;stroke:none" />
164
+        <rect
165
+           width="28"
166
+           height="7.0000005"
167
+           x="10"
168
+           y="40"
169
+           id="rect3700"
170
+           style="fill:url(#linearGradient2877);fill-opacity:1;stroke:none" />
171
+      </g>
172
+    </g>
173
+    <rect
174
+       width="39"
175
+       height="39"
176
+       rx="2.2322156"
177
+       ry="2.2322156"
178
+       x="4.5"
179
+       y="5.4674392"
180
+       id="rect5505"
181
+       style="fill:url(#radialGradient2863);fill-opacity:1;stroke:url(#linearGradient2865);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
182
+    <rect
183
+       width="36.999985"
184
+       height="37.000011"
185
+       rx="1.365193"
186
+       ry="1.365193"
187
+       x="5.4999981"
188
+       y="6.4674282"
189
+       id="rect6741"
190
+       style="opacity:0.4;fill:none;stroke:url(#linearGradient2855);stroke-width:0.99999976;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
191
+    <g
192
+       transform="matrix(1.3050462,0,0,1.3226787,-6.668563,-4.8529242)"
193
+       id="g2558"
194
+       style="opacity:0.4;fill:none;stroke:black;stroke-width:2.20987511;stroke-linecap:round;stroke-miterlimit:0;stroke-opacity:1;stroke-dasharray:none">
195
+      <path
196
+         d="m 19.281951,15.80617 c -6.992352,3.812838 -3.830429,14.73883 4.163513,14.73883 7.910671,0 11.456106,-10.358346 4.163511,-14.73883"
197
+         id="path2560"
198
+         style="fill:none;stroke:black;stroke-width:2.20987511;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:0;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" />
199
+      <path
200
+         d="m 23.499983,20.496141 0,-7.413124"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/remove.svg Added
201
 
1
@@ -0,0 +1,2224 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="remove.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="9.607244"
47
+     inkscape:cy="18.199934"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="layer1-4" />
52
+  <defs
53
+     id="defs2606">
54
+    <linearGradient
55
+       id="linearGradient3333"
56
+       y2="609.51"
57
+       gradientUnits="userSpaceOnUse"
58
+       x2="302.86"
59
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
60
+       y1="366.65"
61
+       x1="302.86">
62
+      <stop
63
+         id="stop5050"
64
+         style="stop-opacity:0"
65
+         offset="0" />
66
+      <stop
67
+         id="stop5056"
68
+         offset=".5" />
69
+      <stop
70
+         id="stop5052"
71
+         style="stop-opacity:0"
72
+         offset="1" />
73
+    </linearGradient>
74
+    <radialGradient
75
+       id="radialGradient3330"
76
+       xlink:href="#linearGradient5060"
77
+       gradientUnits="userSpaceOnUse"
78
+       cy="486.65"
79
+       cx="605.71"
80
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
81
+       r="117.14" />
82
+    <linearGradient
83
+       id="linearGradient5060">
84
+      <stop
85
+         id="stop5062"
86
+         offset="0" />
87
+      <stop
88
+         id="stop5064"
89
+         style="stop-opacity:0"
90
+         offset="1" />
91
+    </linearGradient>
92
+    <radialGradient
93
+       id="radialGradient3327"
94
+       xlink:href="#linearGradient5060"
95
+       gradientUnits="userSpaceOnUse"
96
+       cy="486.65"
97
+       cx="605.71"
98
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
99
+       r="117.14" />
100
+    <linearGradient
101
+       id="linearGradient3324"
102
+       y2="2.9062"
103
+       gradientUnits="userSpaceOnUse"
104
+       x2="-51.786"
105
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
106
+       y1="50.786"
107
+       x1="-51.786">
108
+      <stop
109
+         id="stop3106"
110
+         style="stop-color:#aaa"
111
+         offset="0" />
112
+      <stop
113
+         id="stop3108"
114
+         style="stop-color:#c8c8c8"
115
+         offset="1" />
116
+    </linearGradient>
117
+    <linearGradient
118
+       id="linearGradient3322"
119
+       y2="47.013"
120
+       gradientUnits="userSpaceOnUse"
121
+       x2="25.132"
122
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
123
+       y1=".98521"
124
+       x1="25.132">
125
+      <stop
126
+         id="stop3602"
127
+         style="stop-color:#f4f4f4"
128
+         offset="0" />
129
+      <stop
130
+         id="stop3604"
131
+         style="stop-color:#dbdbdb"
132
+         offset="1" />
133
+    </linearGradient>
134
+    <radialGradient
135
+       id="radialGradient3319"
136
+       gradientUnits="userSpaceOnUse"
137
+       cy="112.3"
138
+       cx="102"
139
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
140
+       r="139.56">
141
+      <stop
142
+         id="stop41"
143
+         style="stop-color:#b7b8b9"
144
+         offset="0" />
145
+      <stop
146
+         id="stop47"
147
+         style="stop-color:#ececec"
148
+         offset=".18851" />
149
+      <stop
150
+         id="stop49"
151
+         style="stop-color:#fafafa;stop-opacity:0"
152
+         offset=".25718" />
153
+      <stop
154
+         id="stop51"
155
+         style="stop-color:#fff;stop-opacity:0"
156
+         offset=".30111" />
157
+      <stop
158
+         id="stop53"
159
+         style="stop-color:#fafafa;stop-opacity:0"
160
+         offset=".53130" />
161
+      <stop
162
+         id="stop55"
163
+         style="stop-color:#ebecec;stop-opacity:0"
164
+         offset=".84490" />
165
+      <stop
166
+         id="stop57"
167
+         style="stop-color:#e1e2e3;stop-opacity:0"
168
+         offset="1" />
169
+    </radialGradient>
170
+    <linearGradient
171
+       id="linearGradient3316"
172
+       y2="46.017"
173
+       gradientUnits="userSpaceOnUse"
174
+       x2="24"
175
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
176
+       y1="2"
177
+       x1="24">
178
+      <stop
179
+         id="stop3213"
180
+         style="stop-color:#fff"
181
+         offset="0" />
182
+      <stop
183
+         id="stop3215"
184
+         style="stop-color:#fff;stop-opacity:0"
185
+         offset="1" />
186
+    </linearGradient>
187
+    <filter
188
+       id="filter3212"
189
+       y="-.16434"
190
+       width="1.2969"
191
+       x="-.14846"
192
+       height="1.3287">
193
+      <feGaussianBlur
194
+         id="feGaussianBlur3214"
195
+         stdDeviation="0.77391625" />
196
+    </filter>
197
+    <linearGradient
198
+       id="linearGradient3312"
199
+       y2="5.4565"
200
+       gradientUnits="userSpaceOnUse"
201
curlew-0.1.22.3.tar.gz/Curlew/icons/Default/stop.svg Added
201
 
1
@@ -0,0 +1,2077 @@
2
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
+
5
+<svg
6
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
7
+   xmlns:cc="http://creativecommons.org/ns#"
8
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
+   xmlns:svg="http://www.w3.org/2000/svg"
10
+   xmlns="http://www.w3.org/2000/svg"
11
+   xmlns:xlink="http://www.w3.org/1999/xlink"
12
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
13
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
14
+   id="svg2604"
15
+   height="48"
16
+   width="48"
17
+   version="1.0"
18
+   inkscape:version="0.48.4 r9939"
19
+   sodipodi:docname="stop.svg">
20
+  <metadata
21
+     id="metadata59">
22
+    <rdf:RDF>
23
+      <cc:Work
24
+         rdf:about="">
25
+        <dc:format>image/svg+xml</dc:format>
26
+        <dc:type
27
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
28
+        <dc:title />
29
+      </cc:Work>
30
+    </rdf:RDF>
31
+  </metadata>
32
+  <sodipodi:namedview
33
+     pagecolor="#ffffff"
34
+     bordercolor="#666666"
35
+     borderopacity="1"
36
+     objecttolerance="10"
37
+     gridtolerance="10"
38
+     guidetolerance="10"
39
+     inkscape:pageopacity="0"
40
+     inkscape:pageshadow="2"
41
+     inkscape:window-width="1600"
42
+     inkscape:window-height="842"
43
+     id="namedview57"
44
+     showgrid="false"
45
+     inkscape:zoom="9.3102393"
46
+     inkscape:cx="7.7207342"
47
+     inkscape:cy="24"
48
+     inkscape:window-x="-2"
49
+     inkscape:window-y="-3"
50
+     inkscape:window-maximized="1"
51
+     inkscape:current-layer="g3652" />
52
+  <defs
53
+     id="defs2606">
54
+    <linearGradient
55
+       id="linearGradient3385">
56
+      <stop
57
+         offset="0"
58
+         style="stop-color:#f8b17e;stop-opacity:1"
59
+         id="stop3387" />
60
+      <stop
61
+         offset="0.43517464"
62
+         style="stop-color:#e35d4f;stop-opacity:1"
63
+         id="stop3389" />
64
+      <stop
65
+         offset="0.66093999"
66
+         style="stop-color:#c6262e;stop-opacity:1"
67
+         id="stop3391" />
68
+      <stop
69
+         offset="1"
70
+         style="stop-color:#690b54;stop-opacity:1"
71
+         id="stop3393" />
72
+    </linearGradient>
73
+    <linearGradient
74
+       id="linearGradient3333"
75
+       y2="609.51"
76
+       gradientUnits="userSpaceOnUse"
77
+       x2="302.86"
78
+       gradientTransform="matrix(.067325 0 0 0.0147 -.34114 37.04)"
79
+       y1="366.65"
80
+       x1="302.86">
81
+      <stop
82
+         id="stop5050"
83
+         style="stop-opacity:0"
84
+         offset="0" />
85
+      <stop
86
+         id="stop5056"
87
+         offset=".5" />
88
+      <stop
89
+         id="stop5052"
90
+         style="stop-opacity:0"
91
+         offset="1" />
92
+    </linearGradient>
93
+    <radialGradient
94
+       id="radialGradient3330"
95
+       xlink:href="#linearGradient5060"
96
+       gradientUnits="userSpaceOnUse"
97
+       cy="486.65"
98
+       cx="605.71"
99
+       gradientTransform="matrix(-.023040 0 0 0.0147 21.623 37.04)"
100
+       r="117.14" />
101
+    <linearGradient
102
+       id="linearGradient5060">
103
+      <stop
104
+         id="stop5062"
105
+         offset="0" />
106
+      <stop
107
+         id="stop5064"
108
+         style="stop-opacity:0"
109
+         offset="1" />
110
+    </linearGradient>
111
+    <radialGradient
112
+       id="radialGradient3327"
113
+       xlink:href="#linearGradient5060"
114
+       gradientUnits="userSpaceOnUse"
115
+       cy="486.65"
116
+       cx="605.71"
117
+       gradientTransform="matrix(.023040 0 0 0.0147 26.361 37.04)"
118
+       r="117.14" />
119
+    <linearGradient
120
+       id="linearGradient3324"
121
+       y2="2.9062"
122
+       gradientUnits="userSpaceOnUse"
123
+       x2="-51.786"
124
+       gradientTransform="matrix(.80750 0 0 .89483 59.41 -2.9806)"
125
+       y1="50.786"
126
+       x1="-51.786">
127
+      <stop
128
+         id="stop3106"
129
+         style="stop-color:#aaa"
130
+         offset="0" />
131
+      <stop
132
+         id="stop3108"
133
+         style="stop-color:#c8c8c8"
134
+         offset="1" />
135
+    </linearGradient>
136
+    <linearGradient
137
+       id="linearGradient3322"
138
+       y2="47.013"
139
+       gradientUnits="userSpaceOnUse"
140
+       x2="25.132"
141
+       gradientTransform="matrix(1 0 0 .95617 -1.0065e-7 -1.9149)"
142
+       y1=".98521"
143
+       x1="25.132">
144
+      <stop
145
+         id="stop3602"
146
+         style="stop-color:#f4f4f4"
147
+         offset="0" />
148
+      <stop
149
+         id="stop3604"
150
+         style="stop-color:#dbdbdb"
151
+         offset="1" />
152
+    </linearGradient>
153
+    <radialGradient
154
+       id="radialGradient3319"
155
+       gradientUnits="userSpaceOnUse"
156
+       cy="112.3"
157
+       cx="102"
158
+       gradientTransform="matrix(.36170 0 0 -.39078 .85106 47.517)"
159
+       r="139.56">
160
+      <stop
161
+         id="stop41"
162
+         style="stop-color:#b7b8b9"
163
+         offset="0" />
164
+      <stop
165
+         id="stop47"
166
+         style="stop-color:#ececec"
167
+         offset=".18851" />
168
+      <stop
169
+         id="stop49"
170
+         style="stop-color:#fafafa;stop-opacity:0"
171
+         offset=".25718" />
172
+      <stop
173
+         id="stop51"
174
+         style="stop-color:#fff;stop-opacity:0"
175
+         offset=".30111" />
176
+      <stop
177
+         id="stop53"
178
+         style="stop-color:#fafafa;stop-opacity:0"
179
+         offset=".53130" />
180
+      <stop
181
+         id="stop55"
182
+         style="stop-color:#ebecec;stop-opacity:0"
183
+         offset=".84490" />
184
+      <stop
185
+         id="stop57"
186
+         style="stop-color:#e1e2e3;stop-opacity:0"
187
+         offset="1" />
188
+    </radialGradient>
189
+    <linearGradient
190
+       id="linearGradient3316"
191
+       y2="46.017"
192
+       gradientUnits="userSpaceOnUse"
193
+       x2="24"
194
+       gradientTransform="matrix(1 0 0 .97778 0 -.96667)"
195
+       y1="2"
196
+       x1="24">
197
+      <stop
198
+         id="stop3213"
199
+         style="stop-color:#fff"
200
+         offset="0" />
201
curlew-0.1.22.3.tar.gz/Curlew/languages.py Added
38
 
1
@@ -0,0 +1,35 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+LANGUAGES = {
23
+             'العربية': 'ar',
24
+             'Português - Brazil': 'br',
25
+             'Český': 'cs',
26
+             'English': 'en',
27
+             'Español': 'es',
28
+             'Euskara': 'eu',
29
+             'Français': 'fr',
30
+             'Italiano': 'it',
31
+             'Nederlands': 'nl',
32
+             'Polski': 'pl',
33
+             'Русский': 'ru',
34
+             'Srpski': 'sr',
35
+             'Traditional Chinese: 正體中文': 'zh_TW'
36
+             }
37
\ No newline at end of file
38
curlew-0.1.22.3.tar.gz/Curlew/logdialog.py Added
64
 
1
@@ -0,0 +1,61 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk, Pango
23
+
24
+class LogDialog(Gtk.Dialog):
25
+    def __init__(self, prnt, log_file):
26
+        self._log_file = log_file
27
+        Gtk.Dialog.__init__(self, parent=prnt)
28
+        self.set_size_request(550, 450)
29
+        self.set_border_width(6)
30
+        self.set_title(_('Errors detail'))
31
+        scroll = Gtk.ScrolledWindow()
32
+        scroll.set_shadow_type(Gtk.ShadowType.IN)
33
+        text_log = Gtk.TextView()
34
+        text_log.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
35
+        text_log.set_border_width(6)
36
+        text_log.set_editable(False)
37
+        text_log.set_cursor_visible(False)
38
+        
39
+        font_desc = Pango.FontDescription('Monospace')
40
+        text_log.override_font(font_desc)
41
+        
42
+        text_buffer = Gtk.TextBuffer()
43
+        text_log.set_buffer(text_buffer)
44
+        
45
+        scroll.add(text_log)
46
+        self.vbox.pack_start(scroll, True, True, 0)
47
+        
48
+        button = self.add_button(Gtk.STOCK_CLOSE, Gtk.ResponseType.CLOSE)
49
+        self.set_default(button)
50
+        
51
+        with open(log_file, 'r') as log:
52
+            text_buffer.set_text(log.read())
53
+    
54
+    def show_dialog(self):
55
+        self.show_all()
56
+        self.run()
57
+        self.destroy()
58
+        
59
+        
60
+        
61
+        
62
+        
63
\ No newline at end of file
64
curlew-0.1.22.3.tar.gz/Curlew/tray.py Added
91
 
1
@@ -0,0 +1,89 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+
22
+from gi.repository import Gtk
23
+
24
+class StatusIcon(Gtk.StatusIcon):
25
+    def __init__(self, window):
26
+        Gtk.StatusIcon.__init__(self)
27
+        
28
+        self._window = window
29
+        
30
+        self.set_from_icon_name('curlew')
31
+        self.set_tooltip_text(_('Curlew'))
32
+    
33
+        #---- Build menu
34
+        self.menu = Gtk.Menu()
35
+        
36
+        # Show main window
37
+        self.show_item = Gtk.MenuItem(_('Hide'))
38
+        self.show_item.connect("activate", self.show_hide)
39
+        
40
+        # Stop conversion
41
+        stop_item = Gtk.MenuItem(_('Stop Conversion'))
42
+        stop_item.connect("activate", self.stop)
43
+        
44
+        # Quit application
45
+        quit_item = Gtk.MenuItem(_('Quit application'))
46
+        quit_item.connect("activate", self.quit)
47
+        
48
+        # Append menu items and show all
49
+        self.menu.append(self.show_item)
50
+        self.menu.append(stop_item)
51
+        self.menu.append(quit_item)
52
+
53
+        # Make connection
54
+        self.connect('popup-menu', self.on_popup_menu, stop_item)
55
+        self.connect('activate', self.show_hide)
56
+
57
+        self.set_visible(False)
58
+    
59
+    
60
+    def on_popup_menu(self, icon, button, time, stop_item):
61
+        
62
+        # stop_item sensitivity
63
+        stop_item.set_sensitive(self._window.is_converting)
64
+        
65
+        # show/hide
66
+        if self._window.get_visible():
67
+            self.show_item.set_label(_('Hide'))
68
+        else:
69
+            self.show_item.set_label(_('Show'))
70
+        
71
+        self.menu.show_all()
72
+        self.menu.popup(None, None, Gtk.StatusIcon.position_menu, 
73
+                        icon, button, time)
74
+    
75
+    
76
+    def show_hide(self, *agrs):
77
+        if self._window.get_visible():
78
+            self._window.hide()
79
+        else:
80
+            self._window.present()
81
+        
82
+    def stop(self, stop_item):
83
+        if self._window.tb_stop_cb():
84
+            self._window.present()
85
+        
86
+    def quit(self, *args):
87
+        self._window.quit_cb()
88
+
89
+
90
+
91
curlew-0.1.22.3.tar.gz/Curlew/waitdialog.py Added
62
 
1
@@ -0,0 +1,60 @@
2
+# -*- coding: utf-8 -*-
3
+
4
+# Curlew - Easy to use multimedia converter
5
+#
6
+# Copyright (C) 2012-2014 Fayssal Chamekh <chamfay@gmail.com>
7
+#
8
+# Released under terms on waqf public license.
9
+#
10
+# Curlew is free software; you can redistribute it and/or modify it 
11
+# under the terms of the latest version waqf public license as published by 
12
+# ojuba.org.
13
+#
14
+# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
+# ANY WARRANTY; without even the implied warranty 
16
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
+#        
18
+# The latest version of the license can be found on:
19
+# http://www.ojuba.org/wiki/doku.php/waqf/license
20
+
21
+from gi.repository import Gtk
22
+
23
+class WaitDialog(Gtk.Dialog):
24
+    def __init__(self, parent):
25
+        
26
+        self.skip = False
27
+        
28
+        Gtk.Dialog.__init__(self, parent=parent)
29
+        self.set_size_request(650, 50)
30
+        self.set_border_width(8)
31
+        self.set_resizable(False)
32
+        self.set_title(_('Adding files...'))
33
+        
34
+        self.text_file = Gtk.Label()
35
+        self.text_file.set_alignment(0, 0.5)
36
+        self.text_file.set_max_width_chars(50)
37
+        self.vbox.pack_start(self.text_file, False, False, 6)
38
+        
39
+        self.prog_bar = Gtk.ProgressBar()
40
+        self.prog_bar.set_show_text(True)
41
+        self.vbox.pack_start(self.prog_bar, False, False, 6)
42
+        
43
+        btn_skip = self.add_button(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL)
44
+        btn_skip.connect('clicked', self.__skip)
45
+        
46
+        self.show_all()
47
+        self.connect('delete-event', self.__skip)
48
+    
49
+    
50
+    def set_filename(self, filename):
51
+        self.text_file.set_markup(_('<b>File:</b> ')+filename)
52
+    
53
+    def set_progress(self, value):
54
+        self.prog_bar.set_fraction(value)
55
+        self.prog_bar.set_text('{:.0f}%'.format(value*100))
56
+    
57
+    def __skip(self, *args):
58
+        self.skip = True
59
+
60
+
61
+
62
curlew-0.2.1.tar.gz/PKG-INFO -> curlew-0.1.22.3.tar.gz/PKG-INFO Changed
39
 
1
@@ -1,12 +1,12 @@
2
 Metadata-Version: 1.1
3
 Name: curlew
4
-Version: 0.2.1
5
+Version: 0.1.22.3
6
 Summary: Easy to use multimedia converter in Linux
7
-Home-page: http://sourceforge.net/projects/curlew
8
+Home-page: https://github.com/chamfay/Curlew
9
 Author: Fayssal Chamekh
10
 Author-email: chamfay@gmail.com
11
 License: Waqf License
12
-Description: Curlew written in python and GTK3 and it depends on (ffmpeg/avconv).
13
+Description: Curlew written in python and GTK3 and it depends on (ffmpeg/avconv, mencoder).
14
         
15
         Main Features:
16
         - Easy to use with simple user interface.
17
@@ -19,16 +19,16 @@
18
         - Combine subtitle with video file.
19
         - Show error details if exist.
20
         - And more ...
21
-Keywords: convert,audio,video,ffmpeg,avconv
22
+Keywords: convert,audio,video,ffmpeg,mencoder,avconv
23
 Platform: Linux
24
-Classifier: Programming Language :: Python :: 3
25
+Classifier: Programming Language :: Python
26
 Classifier: Operating System :: POSIX :: Linux
27
-Classifier: Development Status :: 5 - Production/Stable
28
-Classifier: Environment :: X11 Applications :: GTK
29
+Classifier: Development Status :: 4 - Beta
30
+Classifier: Environment :: X11 Applications :: Gtk
31
 Classifier: Natural Language :: English
32
 Classifier: Natural Language :: Arabic
33
-Classifier: Natural Language :: French
34
 Classifier: Intended Audience :: End Users/Desktop
35
 Classifier: Topic :: Desktop Environment :: Gnome
36
+Classifier: Topic :: Multimedia :: Video :: Conversion
37
 Classifier: Topic :: Multimedia :: Sound/Audio :: Conversion
38
 Classifier: Topic :: Utilities
39
curlew-0.2.1.tar.gz/README -> curlew-0.1.22.3.tar.gz/README Changed
84
 
1
@@ -5,7 +5,7 @@
2
 ------------
3
 
4
 Easy to use, Free and Open-Source Multimedia converter for Linux.
5
-Curlew written in python and GTK3 and it depends on (ffmpeg/avconv).
6
+Curlew written in python and GTK3 and it depends on (ffmpeg/avconv, mencoder).
7
 
8
 Main Features:
9
 
10
@@ -24,53 +24,46 @@
11
 Dependencies:
12
 -------------
13
 
14
-For Curlew:
15
+- python >= 2.7 << 3.0
16
+- python-gobject >= 3.0
17
+- gir1.2-gtk-3.0 >> 3.2
18
+- ffmpeg >= 0.8 (or libav-tools >= 0.8)
19
+- mencoder
20
+- libavcodec-extra (Ubuntu/Debian)
21
+- xdg-utils
22
+- mediainfo
23
 
24
-    - python >= 3.3
25
-    - python3-gi >= 3.12
26
-   - python3-dbus
27
-    - gir1.2-gtk-3.0 >> 3.12
28
-    - libav-tools >= 0.8 (or ffmpeg)
29
-    - libavcodec-extra (Ubuntu/Debian)
30
-    - xdg-utils
31
-    - mediainfo
32
-    - gnome-icon-theme-symbolic
33
+NB: This dependencies names may change if you use another distribution than Ubuntu/Debian or its sons.
34
 
35
-For installer (setup.py):
36
+Note:
37
+-----
38
 
39
-    - librsvg2-bin (or something similar) to convert .svg to .png.
40
-    - intltool-debian (or intltool) to compile translations files.
41
-
42
-NB: This dependencies names may change if you are using another distribution than Ubuntu/Debian or its sons.
43
+To install Curlew, you MUST have 'imagemagick' and 'intltool' installed in
44
+your machine.
45
 
46
 
47
 License:
48
 --------
49
 
50
 Waqf public license.
51
-Please see: LICENSE-ar.txt/LICENSE-en.txt files for more informations.
52
+Please see LICENSE-ar.txt/LICENSE-en files for more informations.
53
 
54
 
55
 Installation:
56
 -------------
57
 
58
-In terminal, run the following (as root):
59
-> python3 setup.py install --prefix=/usr
60
-Or run script (as root):
61
-> ./install
62
+In terminal run the following (as root).
63
+sudo python setup.py install
64
 
65
 
66
 Remove (Uninstall):
67
 -------------------
68
 
69
-In terminal run the following (as root):
70
-> python3 setup.py uninstall
71
-Or run script (as root):
72
-> ./uninstall
73
-
74
+In terminal run the following (as root).
75
+sudo python setup.py uninstall
76
 
77
-Clean Project:
78
+Clean project:
79
 --------------
80
 
81
-> sudo python3 setup.py clean
82
+sudo python setup.py clean
83
 
84
curlew-0.2.1.tar.gz/TODO -> curlew-0.1.22.3.tar.gz/TODO Changed
16
 
1
@@ -1,11 +1,5 @@
2
 بسم الله الرحمن الرحيم
3
 
4
-
5
-Fixes:
6
-* Prevent to duplicate file in the same session.
7
-
8
-Changes:
9
-* Use GLib.spawn_* functions instead of subprocess
10
-
11
-Features:
12
-* ...
13
+- Prevent to duplicate file in the same session.
14
+- Move icons to /usr/share/curlew/icons
15
+- ?
16
curlew-0.2.1.tar.gz/curlew -> curlew-0.1.22.3.tar.gz/curlew Changed
15
 
1
@@ -1,9 +1,4 @@
2
-#!/usr/bin/env python3
3
-
4
-from site import addsitedir
5
-addsitedir('/usr/share/curlew')
6
-addsitedir('/usr/local/share/curlew')
7
-
8
+#!/usr/bin/env python2
9
 import sys
10
-from modules.curlew import main
11
-main(*sys.argv[1:])
12
+from Curlew.curlew import main
13
+main(*sys.argv[1:])
14
\ No newline at end of file
15
curlew-0.2.1.tar.gz/curlew.desktop -> curlew-0.1.22.3.tar.gz/curlew.desktop Changed
31
 
1
@@ -1,18 +1,18 @@
2
 [Desktop Entry]
3
-Categories=AudioVideo;Video;
4
+Type=Application
5
+Name=Curlew
6
+Icon=curlew
7
+Exec=curlew %U
8
+Name[ar]=كروان
9
+Name[en]=Curlew
10
+Name[fr]=Courlis
11
+Name[en_US]=Curlew
12
+Name[en_FR]=Courlis
13
 Comment[en_US]=Easy to use Multimedia Converter for Linux
14
 Comment=Easy to use Multimedia Converter for Linux
15
 Comment[ar]=محول وسائط على لينكس سهل الاستخدام
16
 Comment[fr]=Un Convertisseur Multimédia simple à utiliser sous Linux
17
+Categories=AudioVideo;Video;
18
+#MimeType=audio/vorbis;audio/x-mp3;audio/x-ms-wma;audio/x-vorbis;audio/x-wav;video/x-ms-asf;audio/ogg;audio/3gpp;audio/AMR;audio/AMR-WB;video/3gpp;video/flv;video/mpeg;video/msvideo;video/x-mpeg;video/x-ms-asf;video/x-ms-wmv;video/quicktime;audio/x-realaudio;audio/x-pn-realaudio;video/vnd.rn-realvideo;audio/mp4a-latm;video/x-m4v;video/mp4;audio/x-matroska;video/x-matroska;audio/x-aiff;audio/x-monkeys-audio;video/x-m4v;audio/mp4a-latm;video/webm
19
 Encoding=UTF-8
20
-Exec=curlew %U
21
-Icon=curlew
22
-Name[en_US]=Curlew
23
-Name=Curlew
24
-Name[ar]=كروان
25
-Name[en]=Curlew
26
-Name[en_FR]=Courlis
27
-Name[fr]=Courlis
28
-StartupNotify=true
29
 Terminal=false
30
-Type=Application
31
curlew-0.1.22.3.tar.gz/curlew.spec Added
93
 
1
@@ -0,0 +1,91 @@
2
+Name:           curlew
3
+Summary:        Easy to use and Free Multimedia converter for Linux
4
+URL:            https://github.com/chamfay/Curlew
5
+Version:        0.1.19
6
+Release:        1%{?dist}
7
+Source0:        %{name}-%{version}.tar.bz2
8
+License:        Waqf
9
+Group:          Applications/Multimedia
10
+BuildArch:      noarch
11
+BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
12
+BuildRequires:  python
13
+Requires:       python, xdg-utils, ffmpeg, mencoder
14
+Requires:       pygobject3 >= 3.0
15
+
16
+%description
17
+Easy to use, Free and Open-Source Multimedia converter for Linux.
18
+Curlew written in python and GTK3 and it depends on (ffmpeg/avconv, mencoder).
19
+
20
+Main Features:
21
+    - Easy to use with simple user interface.
22
+    - Hide the advanced options with the ability to show them.
23
+    - Convert to more than 100 different formats.
24
+    - Show file informations (duration, remaining time, estimated size, progress value).
25
+    - Allow to skip or remove file during conversion process.
26
+    - Preview file before conversion.
27
+    - Convert a specified portion of file.
28
+    - Combine subtitle with video file.
29
+    - Show error details if exist.
30
+    - And more ...
31
+
32
+
33
+%prep
34
+%setup -q
35
+
36
+%build
37
+make %{?_smp_mflags}
38
+
39
+%install
40
+rm -rf $RPM_BUILD_ROOT
41
+%makeinstall DESTDIR=$RPM_BUILD_ROOT
42
+
43
+%post
44
+touch --no-create %{_datadir}/icons/hicolor || :
45
+if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
46
+%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
47
+fi
48
+if [ -x %{_bindir}/update-desktop-database ] ; then
49
+%{_bindir}/update-desktop-database --quiet %{_datadir}/applications || :
50
+fi
51
+
52
+%postun
53
+touch --no-create %{_datadir}/icons/hicolor || :
54
+if [ -x %{_bindir}/gtk-update-icon-cache ] ; then
55
+%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
56
+fi
57
+if [ -x %{_bindir}/update-desktop-database ] ; then
58
+%{_bindir}/update-desktop-database --quiet %{_datadir}/applications || :
59
+fi
60
+
61
+%clean
62
+rm -rf $RPM_BUILD_ROOT
63
+
64
+%files
65
+#%doc ChangeLog VERSION README LICENSE-ar LICENSE-en
66
+%{_defaultdocdir}/%{name}-%{version}/*
67
+%{_bindir}/%{name}
68
+%{python_sitelib}/*
69
+#%{python_sitelib}/*.egg-info
70
+%{python_sitelib}/Curlew/icons/*/*.png
71
+%{_datadir}/applications/%{name}.desktop
72
+%{_datadir}/locale/*/*/%{name}.mo
73
+%{_datadir}/icons/hicolor/*/apps/*.png
74
+%{_datadir}/icons/hicolor/*/apps/*.svg
75
+
76
+%changelog
77
+* Sun Jun 07 2013 Fayssal Chamekh <chamfay@gmail.com> - 0.1.19-1
78
+ - Added 'libvo_aacenc' audio codec.
79
+ - Added 'Copy Mode' option (to split too faster without converting).
80
+ - Added 'to the end' option.
81
+ - Added Czech language (Pavel Fric <pavelfric@seznam.cz>).
82
+* Thu Mar 07 2013 Fayssal Chamekh <chamfay@gmail.com> - 0.1.18.1-1
83
+ - Updates.
84
+* Thu Mar 07 2013 Fayssal Chamekh <chamfay@gmail.com> - 0.1.18-1
85
+ - Moved all install stuffs to setup.py and remove makefiles.
86
+* Sun Feb 10 2013 Ehab El-Gedawy <ehabsas@gmail.com> - 0.1.17-1
87
+ - Sorted formats
88
+ - Enable adding files via cmd line
89
+ - Add programe to Viedo/Audio files menu
90
+ - Makefile
91
+ - rpm initail packing
92
+
93
curlew-0.2.1.tar.gz/po/ar.po -> curlew-0.1.22.3.tar.gz/po/ar.po Changed
201
 
1
@@ -7,562 +7,444 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1.0\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
-"PO-Revision-Date: 2016-02-19 09:01+0100\n"
7
-"Last-Translator: Faissal Chamekh <chamfay@gmail0com>\n"
8
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
9
+"PO-Revision-Date: 2014-02-17 21:23-0000\n"
10
+"Last-Translator: Fayssal Chamekh <chamfay@gmail.com>\n"
11
 "Language-Team: Arabic <chamfay@gmail.com>\n"
12
 "Language: ar\n"
13
 "MIME-Version: 1.0\n"
14
 "Content-Type: text/plain; charset=UTF-8\n"
15
 "Content-Transfer-Encoding: 8bit\n"
16
-"X-Generator: Poedit 1.8.4\n"
17
+"X-Generator: Poedit 1.5.4\n"
18
 "X-Poedit-SourceCharset: UTF-8\n"
19
 
20
-#: modules/customwidgets.py:50
21
-msgid "Top"
22
-msgstr "أعلى"
23
-
24
-#: modules/customwidgets.py:58
25
-msgid "Bottom"
26
-msgstr "أسفل"
27
-
28
-#: modules/customwidgets.py:66
29
-msgid "Left"
30
-msgstr "يسار"
31
-
32
-#: modules/customwidgets.py:74
33
-msgid "Right"
34
-msgstr "يمين"
35
-
36
-#: modules/customwidgets.py:172
37
-msgid "hr"
38
-msgstr "سا"
39
-
40
-#: modules/customwidgets.py:177
41
-msgid "min"
42
-msgstr "د"
43
-
44
-#: modules/customwidgets.py:182 modules/curlew.py:698
45
-msgid "sec"
46
-msgstr "ثا"
47
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
48
+msgid "Curlew"
49
+msgstr "كـروان"
50
 
51
-#: modules/favdialog.py:28 modules/curlew.py:480
52
-msgid "Favorite list"
53
-msgstr "القائمة المفضّلة"
54
+#: Curlew/curlew.py:172
55
+msgid "Add File"
56
+msgstr "أضِف ملفاً"
57
 
58
-#: modules/favdialog.py:38
59
-msgid "Format"
60
-msgstr "الصيــغة"
61
+#: Curlew/curlew.py:173
62
+msgid "Add files"
63
+msgstr "أضِف ملفات"
64
 
65
-#: modules/favdialog.py:55
66
-msgid "Up"
67
-msgstr "أعلى"
68
+#: Curlew/curlew.py:176
69
+msgid "Add Folder"
70
+msgstr "أضِف مجلداً"
71
 
72
-#: modules/favdialog.py:61
73
-msgid "Down"
74
-msgstr "أسفل"
75
+#: Curlew/curlew.py:177
76
+msgid "Add folders"
77
+msgstr "إضافة مجلدات"
78
 
79
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
80
+#: Curlew/curlew.py:181
81
 msgid "Remove"
82
 msgstr "اِحذف"
83
 
84
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
85
-#: modules/curlew.py:251
86
-msgid "Curlew"
87
-msgstr "كـروان"
88
-
89
-#: modules/about.py:35 modules/curlew.py:328
90
-msgid "About Curlew"
91
-msgstr "عنْ كروان"
92
+#: Curlew/curlew.py:182
93
+msgid "Remove files"
94
+msgstr "اِحذِف ملفات"
95
 
96
-#: modules/about.py:38
97
-msgid "Easy to use Multimedia Converter for Linux"
98
-msgstr "محوّل وسائط على لينُكس سهل الاستخدام"
99
+#: Curlew/curlew.py:186
100
+msgid "Clear"
101
+msgstr "اِمسح"
102
 
103
-#: modules/about.py:51
104
-msgid "translator-credits"
105
-msgstr "فيصل شامخ <chamfay@gmail.com>"
106
+#: Curlew/curlew.py:187
107
+msgid "Clear files list"
108
+msgstr "اِمسح قائمة الملفات"
109
 
110
-#: modules/functions.py:44
111
-msgid " KB"
112
-msgstr " ك.ب"
113
+#: Curlew/curlew.py:194
114
+msgid "Convert"
115
+msgstr "حوّل"
116
 
117
-#: modules/functions.py:47
118
-msgid " MB"
119
-msgstr " م.ب"
120
-
121
-#: modules/functions.py:50
122
-msgid " GB"
123
-msgstr " ج.ب"
124
+#: Curlew/curlew.py:195
125
+msgid "Start Conversion"
126
+msgstr "اِبدأ التحويل"
127
 
128
-#: modules/tray.py:36 modules/tray.py:66
129
-msgid "Hide"
130
-msgstr "أخفِ"
131
+#: Curlew/curlew.py:199
132
+msgid "Stop"
133
+msgstr "أوقِف"
134
 
135
-#: modules/tray.py:40 modules/curlew.py:314
136
+#: Curlew/curlew.py:200 Curlew/tray.py:40
137
 msgid "Stop Conversion"
138
 msgstr "أوقف التحويل"
139
 
140
-#: modules/tray.py:44
141
-msgid "Quit application"
142
-msgstr "غادِر البرنامج"
143
-
144
-#: modules/tray.py:68
145
-msgid "Show"
146
-msgstr "أظهِر"
147
-
148
-#: modules/logdialog.py:29
149
-msgid "Errors detail"
150
-msgstr "تفاصيلُ اﻷخطاء"
151
-
152
-#: modules/logdialog.py:48
153
-msgid "_Close"
154
-msgstr "_أغلِق"
155
-
156
-#: modules/edition.py:35
157
-msgid "Are you sure you want to save settings?"
158
-msgstr "هل أنت متأكد من أنك تريد حفظ التغييرات؟"
159
+#: Curlew/curlew.py:207
160
+msgid "File Infos"
161
+msgstr "معلومات"
162
 
163
-#: modules/edition.py:107
164
-msgid "You can't restore a custom format to defaults."
165
-msgstr "لا يمكنك استعادة افتراضيات صيغة مخصصة."
166
-
167
-#: modules/edition.py:202
168
-msgid "Are you sure you want to remove this format?"
169
-msgstr "هل أنت متأكد من أنك تريد حذف هذه الصيغة؟"
170
-
171
-#: modules/edition.py:249
172
-msgid "Audio:"
173
-msgstr "الصوت:"
174
-
175
-#: modules/edition.py:257 modules/edition.py:276
176
-msgid "Default"
177
-msgstr "الافتراضي"
178
-
179
-#: modules/edition.py:260
180
-msgid "Audio Bitrates"
181
-msgstr "معدّلات بتات الصوت"
182
-
183
-#: modules/edition.py:262
184
-msgid "Audio Frequencies"
185
-msgstr "ترددات الصوت"
186
-
187
-#: modules/edition.py:264 modules/curlew.py:551
188
-msgid "Audio Channels"
189
-msgstr "قناة الصوت"
190
-
191
-#: modules/edition.py:266
192
-msgid "Audio Codecs"
193
-msgstr "ترميزات الصوت"
194
-
195
-#: modules/edition.py:269
196
-msgid "Video:"
197
-msgstr "الفيديو:"
198
-
199
-#: modules/edition.py:279
200
-msgid "Video Bitrates"
201
curlew-0.2.1.tar.gz/po/br.po -> curlew-0.1.22.3.tar.gz/po/br.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-04-09 22:18+0100\n"
8
 "Last-Translator: Fayssal Chamekh <chamfay@gmail.com>\n"
9
 "Language-Team: Portuguese Brazil <vagner.unix@gmail.com>\n"
10
@@ -18,574 +18,433 @@
11
 "X-Poedit-SourceCharset: UTF-8\n"
12
 "X-Generator: Poedit 1.5.4\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Topo"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Botão"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Esquerda"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Direita"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "Hs"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "Min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "seg"
41
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
42
+msgid "Curlew"
43
+msgstr "Curlew"
44
 
45
-#: modules/favdialog.py:28 modules/curlew.py:480
46
-msgid "Favorite list"
47
-msgstr "Lista de favoritos"
48
+#: Curlew/curlew.py:172
49
+msgid "Add File"
50
+msgstr "Adicionar Arquivo"
51
 
52
-#: modules/favdialog.py:38
53
-msgid "Format"
54
-msgstr "Formato"
55
+#: Curlew/curlew.py:173
56
+msgid "Add files"
57
+msgstr "Adicionar Arquivos"
58
 
59
-#: modules/favdialog.py:55
60
-msgid "Up"
61
-msgstr ""
62
+#: Curlew/curlew.py:176
63
+msgid "Add Folder"
64
+msgstr "Adicionar Pasta"
65
 
66
-#: modules/favdialog.py:61
67
-msgid "Down"
68
-msgstr ""
69
+#: Curlew/curlew.py:177
70
+msgid "Add folders"
71
+msgstr "Adicionar Pastas"
72
 
73
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
74
+#: Curlew/curlew.py:181
75
 msgid "Remove"
76
 msgstr "Remover"
77
 
78
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
79
-#: modules/curlew.py:251
80
-msgid "Curlew"
81
-msgstr "Curlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "Sobre Curlew"
86
-
87
-#: modules/about.py:38
88
-msgid "Easy to use Multimedia Converter for Linux"
89
-msgstr "Conversor Multimídia fácil de Usar para Linux"
90
+#: Curlew/curlew.py:182
91
+msgid "Remove files"
92
+msgstr "Remover Arquivos"
93
 
94
-#: modules/about.py:51
95
-msgid "translator-credits"
96
-msgstr "VaGNaroK"
97
+#: Curlew/curlew.py:186
98
+msgid "Clear"
99
+msgstr "Limpar"
100
 
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr "KB"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Limpar Lista de Arquivos"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr "MB"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Converter"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr "GB"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Iniciar Conversão"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Esconder"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Parar"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Parar Conversão"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Sair do Programa"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Mostrar"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Detalhes do Erro"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Áudio"
166
+#: Curlew/curlew.py:207
167
+msgid "File Infos"
168
+msgstr "Infos do Arquivo"
169
 
170
-#: modules/edition.py:257 modules/edition.py:276
171
-msgid "Default"
172
-msgstr ""
173
-
174
-#: modules/edition.py:260
175
-#, fuzzy
176
-msgid "Audio Bitrates"
177
-msgstr "Bitrate do Áudio"
178
-
179
-#: modules/edition.py:262
180
-#, fuzzy
181
-msgid "Audio Frequencies"
182
-msgstr "Frequência do Áudio"
183
-
184
-#: modules/edition.py:264 modules/curlew.py:551
185
-msgid "Audio Channels"
186
-msgstr "Canais de Áudio"
187
-
188
-#: modules/edition.py:266
189
-#, fuzzy
190
-msgid "Audio Codecs"
191
-msgstr "Codec de Áudio"
192
-
193
-#: modules/edition.py:269
194
-#, fuzzy
195
-msgid "Video:"
196
-msgstr "Vídeo"
197
-
198
-#: modules/edition.py:279
199
-#, fuzzy
200
-msgid "Video Bitrates"
201
curlew-0.2.1.tar.gz/po/cs.po -> curlew-0.1.22.3.tar.gz/po/cs.po Changed
201
 
1
@@ -6,7 +6,7 @@
2
 msgstr ""
3
 "Project-Id-Version: \n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-01-04 18:34+0100\n"
8
 "Last-Translator: Pavel Fric <pavelfric@seznam.cz>\n"
9
 "Language-Team: Czech <kde-i18n-doc@kde.org>\n"
10
@@ -17,575 +17,434 @@
11
 "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
12
 "X-Generator: Lokalize 1.5\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Nahoře"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Dole"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Vlevo"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Vpravo"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "hod"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "s"
41
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
42
+msgid "Curlew"
43
+msgstr "Curlew"
44
 
45
-#: modules/favdialog.py:28 modules/curlew.py:480
46
-msgid "Favorite list"
47
-msgstr "Seznam oblíbených"
48
+#: Curlew/curlew.py:172
49
+msgid "Add File"
50
+msgstr "Přidat soubor"
51
 
52
-#: modules/favdialog.py:38
53
-msgid "Format"
54
-msgstr "Formát"
55
+#: Curlew/curlew.py:173
56
+msgid "Add files"
57
+msgstr "Přidat soubory"
58
 
59
-#: modules/favdialog.py:55
60
-msgid "Up"
61
-msgstr ""
62
+#: Curlew/curlew.py:176
63
+msgid "Add Folder"
64
+msgstr "Přidat složku"
65
 
66
-#: modules/favdialog.py:61
67
-msgid "Down"
68
-msgstr ""
69
+#: Curlew/curlew.py:177
70
+msgid "Add folders"
71
+msgstr "Přidat složky"
72
 
73
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
74
+#: Curlew/curlew.py:181
75
 msgid "Remove"
76
 msgstr "Odstranit"
77
 
78
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
79
-#: modules/curlew.py:251
80
-msgid "Curlew"
81
-msgstr "Curlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "O programu Curlew"
86
+#: Curlew/curlew.py:182
87
+msgid "Remove files"
88
+msgstr "Odstranit soubory"
89
 
90
-#: modules/about.py:38
91
-msgid "Easy to use Multimedia Converter for Linux"
92
-msgstr "Snadno použitelný převodník multimédií pro Linux"
93
+#: Curlew/curlew.py:186
94
+msgid "Clear"
95
+msgstr "Vyprázdnit"
96
 
97
-#: modules/about.py:51
98
-msgid "translator-credits"
99
-msgstr "www.fripohled.blogspot.com"
100
-
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr " KB"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Smazat seznam souborů"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr " MB"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Převést"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr " GB"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Spustit převod"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Skrýt"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Zastavit"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Zastavit převod"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Ukončit program"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Ukázat"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Podrobnosti chyb"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Zvuk"
166
-
167
-#: modules/edition.py:257 modules/edition.py:276
168
-msgid "Default"
169
-msgstr ""
170
-
171
-#: modules/edition.py:260
172
-#, fuzzy
173
-msgid "Audio Bitrates"
174
-msgstr "Datový tok zvuku"
175
-
176
-#: modules/edition.py:262
177
-#, fuzzy
178
-msgid "Audio Frequencies"
179
-msgstr "Kmitočet zvuku"
180
-
181
-#: modules/edition.py:264 modules/curlew.py:551
182
-msgid "Audio Channels"
183
-msgstr "Zvukové kanály"
184
-
185
-#: modules/edition.py:266
186
-#, fuzzy
187
-msgid "Audio Codecs"
188
-msgstr "Zvukový kodek"
189
-
190
-#: modules/edition.py:269
191
-#, fuzzy
192
-msgid "Video:"
193
-msgstr "Video"
194
-
195
-#: modules/edition.py:279
196
-#, fuzzy
197
-msgid "Video Bitrates"
198
-msgstr "Datový tok obrazu"
199
-
200
-#: modules/edition.py:281 modules/curlew.py:591
201
curlew-0.2.1.tar.gz/po/curlew.pot -> curlew-0.1.22.3.tar.gz/po/curlew.pot Changed
201
 
1
@@ -8,7 +8,7 @@
2
 msgstr ""
3
 "Project-Id-Version: PACKAGE VERSION\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
8
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
9
 "Language-Team: LANGUAGE <LL@li.org>\n"
10
@@ -17,622 +17,562 @@
11
 "Content-Type: text/plain; charset=CHARSET\n"
12
 "Content-Transfer-Encoding: 8bit\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr ""
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr ""
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr ""
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr ""
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr ""
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr ""
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
41
+msgid "Curlew"
42
 msgstr ""
43
 
44
-#: modules/favdialog.py:28 modules/curlew.py:480
45
-msgid "Favorite list"
46
+#: Curlew/curlew.py:172
47
+msgid "Add File"
48
 msgstr ""
49
 
50
-#: modules/favdialog.py:38
51
-msgid "Format"
52
+#: Curlew/curlew.py:173
53
+msgid "Add files"
54
 msgstr ""
55
 
56
-#: modules/favdialog.py:55
57
-msgid "Up"
58
+#: Curlew/curlew.py:176
59
+msgid "Add Folder"
60
 msgstr ""
61
 
62
-#: modules/favdialog.py:61
63
-msgid "Down"
64
+#: Curlew/curlew.py:177
65
+msgid "Add folders"
66
 msgstr ""
67
 
68
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
69
+#: Curlew/curlew.py:181
70
 msgid "Remove"
71
 msgstr ""
72
 
73
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
74
-#: modules/curlew.py:251
75
-msgid "Curlew"
76
-msgstr ""
77
-
78
-#: modules/about.py:35 modules/curlew.py:328
79
-msgid "About Curlew"
80
-msgstr ""
81
-
82
-#: modules/about.py:38
83
-msgid "Easy to use Multimedia Converter for Linux"
84
+#: Curlew/curlew.py:182
85
+msgid "Remove files"
86
 msgstr ""
87
 
88
-#: modules/about.py:51
89
-msgid "translator-credits"
90
+#: Curlew/curlew.py:186
91
+msgid "Clear"
92
 msgstr ""
93
 
94
-#: modules/functions.py:44
95
-msgid " KB"
96
+#: Curlew/curlew.py:187
97
+msgid "Clear files list"
98
 msgstr ""
99
 
100
-#: modules/functions.py:47
101
-msgid " MB"
102
+#: Curlew/curlew.py:194
103
+msgid "Convert"
104
 msgstr ""
105
 
106
-#: modules/functions.py:50
107
-msgid " GB"
108
+#: Curlew/curlew.py:195
109
+msgid "Start Conversion"
110
 msgstr ""
111
 
112
-#: modules/tray.py:36 modules/tray.py:66
113
-msgid "Hide"
114
+#: Curlew/curlew.py:199
115
+msgid "Stop"
116
 msgstr ""
117
 
118
-#: modules/tray.py:40 modules/curlew.py:314
119
+#: Curlew/curlew.py:200 Curlew/tray.py:40
120
 msgid "Stop Conversion"
121
 msgstr ""
122
 
123
-#: modules/tray.py:44
124
-msgid "Quit application"
125
-msgstr ""
126
-
127
-#: modules/tray.py:68
128
-msgid "Show"
129
-msgstr ""
130
-
131
-#: modules/logdialog.py:29
132
-msgid "Errors detail"
133
-msgstr ""
134
-
135
-#: modules/logdialog.py:48
136
-msgid "_Close"
137
-msgstr ""
138
-
139
-#: modules/edition.py:35
140
-msgid "Are you sure you want to save settings?"
141
-msgstr ""
142
-
143
-#: modules/edition.py:107
144
-msgid "You can't restore a custom format to defaults."
145
-msgstr ""
146
-
147
-#: modules/edition.py:202
148
-msgid "Are you sure you want to remove this format?"
149
-msgstr ""
150
-
151
-#: modules/edition.py:249
152
-msgid "Audio:"
153
-msgstr ""
154
-
155
-#: modules/edition.py:257 modules/edition.py:276
156
-msgid "Default"
157
-msgstr ""
158
-
159
-#: modules/edition.py:260
160
-msgid "Audio Bitrates"
161
-msgstr ""
162
-
163
-#: modules/edition.py:262
164
-msgid "Audio Frequencies"
165
+#: Curlew/curlew.py:207
166
+msgid "File Infos"
167
 msgstr ""
168
 
169
-#: modules/edition.py:264 modules/curlew.py:551
170
-msgid "Audio Channels"
171
-msgstr ""
172
-
173
-#: modules/edition.py:266
174
-msgid "Audio Codecs"
175
-msgstr ""
176
-
177
-#: modules/edition.py:269
178
-msgid "Video:"
179
-msgstr ""
180
-
181
-#: modules/edition.py:279
182
-msgid "Video Bitrates"
183
-msgstr ""
184
-
185
-#: modules/edition.py:281 modules/curlew.py:591
186
-msgid "Video FPS"
187
-msgstr ""
188
-
189
-#: modules/edition.py:283
190
-msgid "Video Sizes"
191
-msgstr ""
192
-
193
-#: modules/edition.py:285
194
-msgid "Video Codecs"
195
-msgstr ""
196
-
197
-#: modules/edition.py:287
198
-msgid "Aspect Ratios"
199
-msgstr ""
200
-
201
curlew-0.2.1.tar.gz/po/en.po -> curlew-0.1.22.3.tar.gz/po/en.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2013-03-07 14:21-0000\n"
8
 "Last-Translator: Fayssal Chamekh <chamfay@gmail.com>\n"
9
 "Language-Team: English <chamfay@gmail.com>\n"
10
@@ -18,622 +18,562 @@
11
 "X-Poedit-Language: English\n"
12
 "X-Poedit-SourceCharset: utf-8\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr ""
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr ""
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr ""
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr ""
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr ""
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr ""
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
41
+msgid "Curlew"
42
 msgstr ""
43
 
44
-#: modules/favdialog.py:28 modules/curlew.py:480
45
-msgid "Favorite list"
46
+#: Curlew/curlew.py:172
47
+msgid "Add File"
48
 msgstr ""
49
 
50
-#: modules/favdialog.py:38
51
-msgid "Format"
52
+#: Curlew/curlew.py:173
53
+msgid "Add files"
54
 msgstr ""
55
 
56
-#: modules/favdialog.py:55
57
-msgid "Up"
58
+#: Curlew/curlew.py:176
59
+msgid "Add Folder"
60
 msgstr ""
61
 
62
-#: modules/favdialog.py:61
63
-msgid "Down"
64
+#: Curlew/curlew.py:177
65
+msgid "Add folders"
66
 msgstr ""
67
 
68
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
69
+#: Curlew/curlew.py:181
70
 msgid "Remove"
71
 msgstr ""
72
 
73
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
74
-#: modules/curlew.py:251
75
-msgid "Curlew"
76
-msgstr ""
77
-
78
-#: modules/about.py:35 modules/curlew.py:328
79
-msgid "About Curlew"
80
-msgstr ""
81
-
82
-#: modules/about.py:38
83
-msgid "Easy to use Multimedia Converter for Linux"
84
+#: Curlew/curlew.py:182
85
+msgid "Remove files"
86
 msgstr ""
87
 
88
-#: modules/about.py:51
89
-msgid "translator-credits"
90
+#: Curlew/curlew.py:186
91
+msgid "Clear"
92
 msgstr ""
93
 
94
-#: modules/functions.py:44
95
-msgid " KB"
96
+#: Curlew/curlew.py:187
97
+msgid "Clear files list"
98
 msgstr ""
99
 
100
-#: modules/functions.py:47
101
-msgid " MB"
102
+#: Curlew/curlew.py:194
103
+msgid "Convert"
104
 msgstr ""
105
 
106
-#: modules/functions.py:50
107
-msgid " GB"
108
+#: Curlew/curlew.py:195
109
+msgid "Start Conversion"
110
 msgstr ""
111
 
112
-#: modules/tray.py:36 modules/tray.py:66
113
-msgid "Hide"
114
+#: Curlew/curlew.py:199
115
+msgid "Stop"
116
 msgstr ""
117
 
118
-#: modules/tray.py:40 modules/curlew.py:314
119
+#: Curlew/curlew.py:200 Curlew/tray.py:40
120
 msgid "Stop Conversion"
121
 msgstr ""
122
 
123
-#: modules/tray.py:44
124
-msgid "Quit application"
125
-msgstr ""
126
-
127
-#: modules/tray.py:68
128
-msgid "Show"
129
-msgstr ""
130
-
131
-#: modules/logdialog.py:29
132
-msgid "Errors detail"
133
-msgstr ""
134
-
135
-#: modules/logdialog.py:48
136
-msgid "_Close"
137
-msgstr ""
138
-
139
-#: modules/edition.py:35
140
-msgid "Are you sure you want to save settings?"
141
-msgstr ""
142
-
143
-#: modules/edition.py:107
144
-msgid "You can't restore a custom format to defaults."
145
-msgstr ""
146
-
147
-#: modules/edition.py:202
148
-msgid "Are you sure you want to remove this format?"
149
-msgstr ""
150
-
151
-#: modules/edition.py:249
152
-msgid "Audio:"
153
-msgstr ""
154
-
155
-#: modules/edition.py:257 modules/edition.py:276
156
-msgid "Default"
157
-msgstr ""
158
-
159
-#: modules/edition.py:260
160
-msgid "Audio Bitrates"
161
-msgstr ""
162
-
163
-#: modules/edition.py:262
164
-msgid "Audio Frequencies"
165
+#: Curlew/curlew.py:207
166
+msgid "File Infos"
167
 msgstr ""
168
 
169
-#: modules/edition.py:264 modules/curlew.py:551
170
-msgid "Audio Channels"
171
-msgstr ""
172
-
173
-#: modules/edition.py:266
174
-msgid "Audio Codecs"
175
-msgstr ""
176
-
177
-#: modules/edition.py:269
178
-msgid "Video:"
179
-msgstr ""
180
-
181
-#: modules/edition.py:279
182
-msgid "Video Bitrates"
183
-msgstr ""
184
-
185
-#: modules/edition.py:281 modules/curlew.py:591
186
-msgid "Video FPS"
187
-msgstr ""
188
-
189
-#: modules/edition.py:283
190
-msgid "Video Sizes"
191
-msgstr ""
192
-
193
-#: modules/edition.py:285
194
-msgid "Video Codecs"
195
-msgstr ""
196
-
197
-#: modules/edition.py:287
198
-msgid "Aspect Ratios"
199
-msgstr ""
200
-
201
curlew-0.2.1.tar.gz/po/es.po -> curlew-0.1.22.3.tar.gz/po/es.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2013-08-12 15:59+0100\n"
8
 "Last-Translator: bernardo miguel savone <bmsavone@gmail.com>\n"
9
 "Language-Team: Spanish <bmsavone@gmail.com>\n"
10
@@ -19,579 +19,439 @@
11
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
12
 "X-Generator: Poedit 1.5.7\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Arriba"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Abajo"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Izquierda"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Derecha"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "horas"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "seg"
41
-
42
-#: modules/favdialog.py:28 modules/curlew.py:480
43
-msgid "Favorite list"
44
-msgstr "Lista de favoritos"
45
-
46
-#: modules/favdialog.py:38
47
-msgid "Format"
48
-msgstr "Formato"
49
-
50
-#: modules/favdialog.py:55
51
-msgid "Up"
52
-msgstr ""
53
-
54
-#: modules/favdialog.py:61
55
-msgid "Down"
56
-msgstr ""
57
-
58
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
59
-msgid "Remove"
60
-msgstr "Remover"
61
-
62
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
63
-#: modules/curlew.py:251
64
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
65
 msgid "Curlew"
66
 msgstr "Curlew"
67
 
68
-#: modules/about.py:35 modules/curlew.py:328
69
-msgid "About Curlew"
70
-msgstr "Acerca de Curlew"
71
-
72
-#: modules/about.py:38
73
-msgid "Easy to use Multimedia Converter for Linux"
74
-msgstr "Convertidor multimedia fácil de usar para Linux"
75
-
76
-#: modules/about.py:51
77
-msgid "translator-credits"
78
-msgstr "bersil <bmsavone@gmail.com>"
79
-
80
-#: modules/functions.py:44
81
-msgid " KB"
82
-msgstr " KB"
83
-
84
-#: modules/functions.py:47
85
-msgid " MB"
86
-msgstr " MB"
87
-
88
-#: modules/functions.py:50
89
-msgid " GB"
90
-msgstr " GB"
91
-
92
-#: modules/tray.py:36 modules/tray.py:66
93
-msgid "Hide"
94
-msgstr "Ocultar"
95
-
96
-#: modules/tray.py:40 modules/curlew.py:314
97
-msgid "Stop Conversion"
98
-msgstr "Detener la Conversión"
99
-
100
-#: modules/tray.py:44
101
-msgid "Quit application"
102
-msgstr "Salir de la aplicación"
103
-
104
-#: modules/tray.py:68
105
-msgid "Show"
106
-msgstr "Mostrar"
107
-
108
-#: modules/logdialog.py:29
109
-msgid "Errors detail"
110
-msgstr "Detalles de error"
111
-
112
-#: modules/logdialog.py:48
113
-msgid "_Close"
114
-msgstr ""
115
-
116
-#: modules/edition.py:35
117
-msgid "Are you sure you want to save settings?"
118
-msgstr ""
119
-
120
-#: modules/edition.py:107
121
-msgid "You can't restore a custom format to defaults."
122
-msgstr ""
123
-
124
-#: modules/edition.py:202
125
-msgid "Are you sure you want to remove this format?"
126
-msgstr ""
127
-
128
-#: modules/edition.py:249
129
-#, fuzzy
130
-msgid "Audio:"
131
-msgstr "Audio"
132
-
133
-#: modules/edition.py:257 modules/edition.py:276
134
-msgid "Default"
135
-msgstr ""
136
-
137
-#: modules/edition.py:260
138
-#, fuzzy
139
-msgid "Audio Bitrates"
140
-msgstr "Audio Bitrate"
141
-
142
-#: modules/edition.py:262
143
-#, fuzzy
144
-msgid "Audio Frequencies"
145
-msgstr "Frequencia de audio"
146
-
147
-#: modules/edition.py:264 modules/curlew.py:551
148
-msgid "Audio Channels"
149
-msgstr "Canales de audio"
150
-
151
-#: modules/edition.py:266
152
-#, fuzzy
153
-msgid "Audio Codecs"
154
-msgstr "Codec Audio"
155
-
156
-#: modules/edition.py:269
157
-#, fuzzy
158
-msgid "Video:"
159
-msgstr "Video"
160
-
161
-#: modules/edition.py:279
162
+#: Curlew/curlew.py:172
163
 #, fuzzy
164
-msgid "Video Bitrates"
165
-msgstr "tasa de bits Video"
166
-
167
-#: modules/edition.py:281 modules/curlew.py:591
168
-msgid "Video FPS"
169
-msgstr "FPS Video"
170
+msgid "Add File"
171
+msgstr "Agregar archivo"
172
 
173
-#: modules/edition.py:283
174
-#, fuzzy
175
-msgid "Video Sizes"
176
-msgstr "Tamaño del video"
177
+#: Curlew/curlew.py:173
178
+msgid "Add files"
179
+msgstr "Agregar archivos"
180
 
181
-#: modules/edition.py:285
182
+#: Curlew/curlew.py:176
183
 #, fuzzy
184
-msgid "Video Codecs"
185
-msgstr "Codec Video"
186
+msgid "Add Folder"
187
+msgstr "Agregar archivo"
188
 
189
-#: modules/edition.py:287
190
+#: Curlew/curlew.py:177
191
 #, fuzzy
192
-msgid "Aspect Ratios"
193
-msgstr "Proporciones"
194
+msgid "Add folders"
195
+msgstr "Agregar archivos"
196
 
197
-#: modules/edition.py:289
198
-#, fuzzy
199
-msgid "Other Options:"
200
-msgstr "Otras opciones:"
201
curlew-0.2.1.tar.gz/po/eu.po -> curlew-0.1.22.3.tar.gz/po/eu.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-01-08 19:07+0100\n"
8
 "Last-Translator: Alexander Gabilondo <alexgabi@irakasle.net>\n"
9
 "Language-Team: BASQUE\n"
10
@@ -17,575 +17,434 @@
11
 "Content-Transfer-Encoding: 8bit\n"
12
 "X-Generator: Poedit 1.5.4\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Goitik"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Behetik"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Ezkerretik"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Eskuinetik"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "ordu"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "seg"
41
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
42
+msgid "Curlew"
43
+msgstr "Curlew"
44
 
45
-#: modules/favdialog.py:28 modules/curlew.py:480
46
-msgid "Favorite list"
47
-msgstr "Gogokoen zerrenda"
48
+#: Curlew/curlew.py:172
49
+msgid "Add File"
50
+msgstr "Gehitu fitxategia"
51
 
52
-#: modules/favdialog.py:38
53
-msgid "Format"
54
-msgstr "Formatua"
55
+#: Curlew/curlew.py:173
56
+msgid "Add files"
57
+msgstr "Gehitu fitxategiak"
58
 
59
-#: modules/favdialog.py:55
60
-msgid "Up"
61
-msgstr ""
62
+#: Curlew/curlew.py:176
63
+msgid "Add Folder"
64
+msgstr "Gehitu karpeta"
65
 
66
-#: modules/favdialog.py:61
67
-msgid "Down"
68
-msgstr ""
69
+#: Curlew/curlew.py:177
70
+msgid "Add folders"
71
+msgstr "Gehitu karpetak"
72
 
73
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
74
+#: Curlew/curlew.py:181
75
 msgid "Remove"
76
 msgstr "Kendu"
77
 
78
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
79
-#: modules/curlew.py:251
80
-msgid "Curlew"
81
-msgstr "Curlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "Curlew-ri buruz"
86
-
87
-#: modules/about.py:38
88
-msgid "Easy to use Multimedia Converter for Linux"
89
-msgstr "Multimedia bihurtzaile erraza Linuxerako"
90
+#: Curlew/curlew.py:182
91
+msgid "Remove files"
92
+msgstr "Kendu fitxategiak"
93
 
94
-#: modules/about.py:51
95
-msgid "translator-credits"
96
-msgstr "Itzultzailearen kredituak"
97
+#: Curlew/curlew.py:186
98
+msgid "Clear"
99
+msgstr "Garbitu"
100
 
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr " KB"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Garbitu fitxategi-zerrenda"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr " MB"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Bihurtu"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr " GB"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Hasi bihurketa"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Ezkutatu"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Gelditu"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Gelditu bihurketa"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Irten aplikaziotik"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Erakutsi"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Errorearen xehetasunak"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Audio"
166
-
167
-#: modules/edition.py:257 modules/edition.py:276
168
-msgid "Default"
169
-msgstr ""
170
-
171
-#: modules/edition.py:260
172
-#, fuzzy
173
-msgid "Audio Bitrates"
174
-msgstr "Audio bit-tasa"
175
-
176
-#: modules/edition.py:262
177
-#, fuzzy
178
-msgid "Audio Frequencies"
179
-msgstr "Audio-maiztasuna"
180
-
181
-#: modules/edition.py:264 modules/curlew.py:551
182
-msgid "Audio Channels"
183
-msgstr "Audio-kanalak"
184
-
185
-#: modules/edition.py:266
186
-#, fuzzy
187
-msgid "Audio Codecs"
188
-msgstr "Audio-kodeka"
189
-
190
-#: modules/edition.py:269
191
-#, fuzzy
192
-msgid "Video:"
193
-msgstr "Bideoa"
194
-
195
-#: modules/edition.py:279
196
-#, fuzzy
197
-msgid "Video Bitrates"
198
-msgstr "Bideo bit-tasa"
199
-
200
-#: modules/edition.py:281 modules/curlew.py:591
201
curlew-0.2.1.tar.gz/po/fr.po -> curlew-0.1.22.3.tar.gz/po/fr.po Changed
201
 
1
@@ -7,575 +7,445 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
-"PO-Revision-Date: 2016-02-10 22:55+0100\n"
7
-"Last-Translator: Faissal Chamekh <chamfay@gmail.com>\n"
8
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
9
+"PO-Revision-Date: 2014-01-02 15:04+0100\n"
10
+"Last-Translator: Fayssal Chamekh <chamfay@gmail.com>\n"
11
 "Language-Team: Fayssal Chamekh <chamfay@gmail.com>\n"
12
 "Language: fr_FR\n"
13
 "MIME-Version: 1.0\n"
14
 "Content-Type: text/plain; charset=UTF-8\n"
15
 "Content-Transfer-Encoding: 8bit\n"
16
 "X-Poedit-SourceCharset: utf-8\n"
17
-"X-Generator: Poedit 1.8.4\n"
18
+"X-Generator: Poedit 1.5.4\n"
19
 
20
-#: modules/customwidgets.py:50
21
-msgid "Top"
22
-msgstr "Haut"
23
-
24
-#: modules/customwidgets.py:58
25
-msgid "Bottom"
26
-msgstr "Bas"
27
-
28
-#: modules/customwidgets.py:66
29
-msgid "Left"
30
-msgstr "Gauche"
31
-
32
-#: modules/customwidgets.py:74
33
-msgid "Right"
34
-msgstr "Droite"
35
-
36
-#: modules/customwidgets.py:172
37
-msgid "hr"
38
-msgstr "hr"
39
-
40
-#: modules/customwidgets.py:177
41
-msgid "min"
42
-msgstr "min"
43
-
44
-#: modules/customwidgets.py:182 modules/curlew.py:698
45
-msgid "sec"
46
-msgstr "sec"
47
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
48
+msgid "Curlew"
49
+msgstr "Curlew"
50
 
51
-#: modules/favdialog.py:28 modules/curlew.py:480
52
-msgid "Favorite list"
53
-msgstr "Liste des favoris"
54
+#: Curlew/curlew.py:172
55
+msgid "Add File"
56
+msgstr "Ajouter fichier"
57
 
58
-#: modules/favdialog.py:38
59
-msgid "Format"
60
-msgstr "Format"
61
+#: Curlew/curlew.py:173
62
+msgid "Add files"
63
+msgstr "Ajouter fichiers"
64
 
65
-#: modules/favdialog.py:55
66
-msgid "Up"
67
-msgstr ""
68
+#: Curlew/curlew.py:176
69
+msgid "Add Folder"
70
+msgstr "Ajouter Dossier"
71
 
72
-#: modules/favdialog.py:61
73
-msgid "Down"
74
-msgstr ""
75
+#: Curlew/curlew.py:177
76
+msgid "Add folders"
77
+msgstr "Ajouter Dossiers"
78
 
79
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
80
+#: Curlew/curlew.py:181
81
 msgid "Remove"
82
 msgstr "Supprimer"
83
 
84
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
85
-#: modules/curlew.py:251
86
-msgid "Curlew"
87
-msgstr "Curlew"
88
-
89
-#: modules/about.py:35 modules/curlew.py:328
90
-msgid "About Curlew"
91
-msgstr "A propos de Curlew"
92
-
93
-#: modules/about.py:38
94
-msgid "Easy to use Multimedia Converter for Linux"
95
-msgstr "Un Convertisseur Multimédia simple à utiliser sous Linux"
96
+#: Curlew/curlew.py:182
97
+msgid "Remove files"
98
+msgstr "Supprimer fichiers"
99
 
100
-#: modules/about.py:51
101
-msgid "translator-credits"
102
-msgstr "Fayssal Chamekh <chamfay@gmail.com>"
103
+#: Curlew/curlew.py:186
104
+msgid "Clear"
105
+msgstr "Effacer"
106
 
107
-#: modules/functions.py:44
108
-msgid " KB"
109
-msgstr " KB"
110
+#: Curlew/curlew.py:187
111
+msgid "Clear files list"
112
+msgstr "Effacer la liste"
113
 
114
-#: modules/functions.py:47
115
-msgid " MB"
116
-msgstr " MB"
117
+#: Curlew/curlew.py:194
118
+msgid "Convert"
119
+msgstr "Convertir"
120
 
121
-#: modules/functions.py:50
122
-msgid " GB"
123
-msgstr " GB"
124
+#: Curlew/curlew.py:195
125
+msgid "Start Conversion"
126
+msgstr "Démarrer la conversion"
127
 
128
-#: modules/tray.py:36 modules/tray.py:66
129
-msgid "Hide"
130
-msgstr "Cacher"
131
+#: Curlew/curlew.py:199
132
+msgid "Stop"
133
+msgstr "Arrêter"
134
 
135
-#: modules/tray.py:40 modules/curlew.py:314
136
+#: Curlew/curlew.py:200 Curlew/tray.py:40
137
 msgid "Stop Conversion"
138
 msgstr "Arrêter la conversion"
139
 
140
-#: modules/tray.py:44
141
-msgid "Quit application"
142
-msgstr "Quiter l'application"
143
-
144
-#: modules/tray.py:68
145
-msgid "Show"
146
-msgstr "Afficher"
147
-
148
-#: modules/logdialog.py:29
149
-msgid "Errors detail"
150
-msgstr "Détail des erreurs"
151
-
152
-#: modules/logdialog.py:48
153
-msgid "_Close"
154
-msgstr "_Fermer"
155
-
156
-#: modules/edition.py:35
157
-msgid "Are you sure you want to save settings?"
158
-msgstr ""
159
-
160
-#: modules/edition.py:107
161
-msgid "You can't restore a custom format to defaults."
162
-msgstr ""
163
-
164
-#: modules/edition.py:202
165
-msgid "Are you sure you want to remove this format?"
166
-msgstr ""
167
-
168
-#: modules/edition.py:249
169
-#, fuzzy
170
-msgid "Audio:"
171
-msgstr "Audio"
172
-
173
-#: modules/edition.py:257 modules/edition.py:276
174
-msgid "Default"
175
-msgstr ""
176
-
177
-#: modules/edition.py:260
178
-#, fuzzy
179
-msgid "Audio Bitrates"
180
-msgstr "Bitrate Audio"
181
-
182
-#: modules/edition.py:262
183
-#, fuzzy
184
-msgid "Audio Frequencies"
185
-msgstr "Fréquence Audio"
186
-
187
-#: modules/edition.py:264 modules/curlew.py:551
188
-msgid "Audio Channels"
189
-msgstr "Canaux Audio"
190
-
191
-#: modules/edition.py:266
192
-#, fuzzy
193
-msgid "Audio Codecs"
194
-msgstr "Codec Audio"
195
-
196
-#: modules/edition.py:269
197
-#, fuzzy
198
-msgid "Video:"
199
-msgstr "Vidéo"
200
-
201
curlew-0.2.1.tar.gz/po/it.po -> curlew-0.1.22.3.tar.gz/po/it.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2013-08-12 15:58+0100\n"
8
 "Last-Translator: bernardo miguel savone <bmsavone@gmail.com>\n"
9
 "Language-Team: Italian <bmsavone@gmail.com>\n"
10
@@ -19,579 +19,439 @@
11
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
12
 "X-Generator: Poedit 1.5.7\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Sopra"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Sotto"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Sinistra"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Destra"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "Ora"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "sec"
41
-
42
-#: modules/favdialog.py:28 modules/curlew.py:480
43
-msgid "Favorite list"
44
-msgstr "Lista dei preferiti"
45
-
46
-#: modules/favdialog.py:38
47
-msgid "Format"
48
-msgstr "Formato"
49
-
50
-#: modules/favdialog.py:55
51
-msgid "Up"
52
-msgstr ""
53
-
54
-#: modules/favdialog.py:61
55
-msgid "Down"
56
-msgstr ""
57
-
58
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
59
-msgid "Remove"
60
-msgstr "Rimuovi"
61
-
62
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
63
-#: modules/curlew.py:251
64
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
65
 msgid "Curlew"
66
 msgstr "Curlew"
67
 
68
-#: modules/about.py:35 modules/curlew.py:328
69
-msgid "About Curlew"
70
-msgstr "Info su Curlew"
71
-
72
-#: modules/about.py:38
73
-msgid "Easy to use Multimedia Converter for Linux"
74
-msgstr "Convertitore multimediale per Linux facile da usare"
75
-
76
-#: modules/about.py:51
77
-msgid "translator-credits"
78
-msgstr "bersil <bmsavone@gmail.com>"
79
-
80
-#: modules/functions.py:44
81
-msgid " KB"
82
-msgstr " KB"
83
-
84
-#: modules/functions.py:47
85
-msgid " MB"
86
-msgstr " MB"
87
-
88
-#: modules/functions.py:50
89
-msgid " GB"
90
-msgstr " GB"
91
-
92
-#: modules/tray.py:36 modules/tray.py:66
93
-msgid "Hide"
94
-msgstr "Nascondi"
95
-
96
-#: modules/tray.py:40 modules/curlew.py:314
97
-msgid "Stop Conversion"
98
-msgstr "Ferma Conversione"
99
-
100
-#: modules/tray.py:44
101
-msgid "Quit application"
102
-msgstr "Chiudi l'applicazione"
103
-
104
-#: modules/tray.py:68
105
-msgid "Show"
106
-msgstr "Mostra"
107
-
108
-#: modules/logdialog.py:29
109
-msgid "Errors detail"
110
-msgstr "Dettagli del errore"
111
-
112
-#: modules/logdialog.py:48
113
-msgid "_Close"
114
-msgstr ""
115
-
116
-#: modules/edition.py:35
117
-msgid "Are you sure you want to save settings?"
118
-msgstr ""
119
-
120
-#: modules/edition.py:107
121
-msgid "You can't restore a custom format to defaults."
122
-msgstr ""
123
-
124
-#: modules/edition.py:202
125
-msgid "Are you sure you want to remove this format?"
126
-msgstr ""
127
-
128
-#: modules/edition.py:249
129
-#, fuzzy
130
-msgid "Audio:"
131
-msgstr "Audio"
132
-
133
-#: modules/edition.py:257 modules/edition.py:276
134
-msgid "Default"
135
-msgstr ""
136
-
137
-#: modules/edition.py:260
138
-#, fuzzy
139
-msgid "Audio Bitrates"
140
-msgstr "Audio Bitrate"
141
-
142
-#: modules/edition.py:262
143
-#, fuzzy
144
-msgid "Audio Frequencies"
145
-msgstr "Frequenza audio"
146
-
147
-#: modules/edition.py:264 modules/curlew.py:551
148
-msgid "Audio Channels"
149
-msgstr "Canali audio"
150
-
151
-#: modules/edition.py:266
152
-#, fuzzy
153
-msgid "Audio Codecs"
154
-msgstr "Codec Audio"
155
-
156
-#: modules/edition.py:269
157
-#, fuzzy
158
-msgid "Video:"
159
-msgstr "Video"
160
-
161
-#: modules/edition.py:279
162
+#: Curlew/curlew.py:172
163
 #, fuzzy
164
-msgid "Video Bitrates"
165
-msgstr "Video Bitrate"
166
-
167
-#: modules/edition.py:281 modules/curlew.py:591
168
-msgid "Video FPS"
169
-msgstr "FPS Video"
170
+msgid "Add File"
171
+msgstr "Aggiungi file"
172
 
173
-#: modules/edition.py:283
174
-#, fuzzy
175
-msgid "Video Sizes"
176
-msgstr "Dimensioni video"
177
+#: Curlew/curlew.py:173
178
+msgid "Add files"
179
+msgstr "Aggiungi file"
180
 
181
-#: modules/edition.py:285
182
+#: Curlew/curlew.py:176
183
 #, fuzzy
184
-msgid "Video Codecs"
185
-msgstr "Codec Video"
186
+msgid "Add Folder"
187
+msgstr "Aggiungi file"
188
 
189
-#: modules/edition.py:287
190
+#: Curlew/curlew.py:177
191
 #, fuzzy
192
-msgid "Aspect Ratios"
193
-msgstr "Proporzioni"
194
+msgid "Add folders"
195
+msgstr "Aggiungi file"
196
 
197
-#: modules/edition.py:289
198
-#, fuzzy
199
-msgid "Other Options:"
200
-msgstr "Altre opzioni:"
201
curlew-0.2.1.tar.gz/po/nl.po -> curlew-0.1.22.3.tar.gz/po/nl.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2013-07-25 07:04-0000\n"
8
 "Last-Translator: Fayssal <chamfay@gmail.com>\n"
9
 "Language-Team:  <chamfay@gmail.com>\n"
10
@@ -18,577 +18,440 @@
11
 "X-Poedit-SourceCharset: utf-8\n"
12
 "X-Generator: Poedit 1.5.4\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Boven"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Onder"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Links"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Rechts"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "uren"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "minuten"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "seconden"
41
-
42
-#: modules/favdialog.py:28 modules/curlew.py:480
43
-msgid "Favorite list"
44
-msgstr "Favorietenlijst"
45
-
46
-#: modules/favdialog.py:38
47
-msgid "Format"
48
-msgstr "Formaat"
49
-
50
-#: modules/favdialog.py:55
51
-msgid "Up"
52
-msgstr ""
53
-
54
-#: modules/favdialog.py:61
55
-msgid "Down"
56
-msgstr ""
57
-
58
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
59
-msgid "Remove"
60
-msgstr "Verwijderen"
61
-
62
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
63
-#: modules/curlew.py:251
64
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
65
 msgid "Curlew"
66
 msgstr "Curlew"
67
 
68
-#: modules/about.py:35 modules/curlew.py:328
69
-msgid "About Curlew"
70
-msgstr "Over Curlew"
71
-
72
-#: modules/about.py:38
73
-msgid "Easy to use Multimedia Converter for Linux"
74
-msgstr "Eenvoudig multimediabestanden omzetten in Linux"
75
-
76
-#: modules/about.py:51
77
-msgid "translator-credits"
78
-msgstr "JohnV "
79
-
80
-#: modules/functions.py:44
81
-msgid " KB"
82
-msgstr ""
83
-
84
-#: modules/functions.py:47
85
-msgid " MB"
86
-msgstr ""
87
-
88
-#: modules/functions.py:50
89
-msgid " GB"
90
-msgstr ""
91
-
92
-#: modules/tray.py:36 modules/tray.py:66
93
-msgid "Hide"
94
-msgstr "Verbergen"
95
-
96
-#: modules/tray.py:40 modules/curlew.py:314
97
-msgid "Stop Conversion"
98
-msgstr "Conversie stoppen"
99
-
100
-#: modules/tray.py:44
101
-msgid "Quit application"
102
-msgstr "Toepassing beëindigen"
103
-
104
-#: modules/tray.py:68
105
-msgid "Show"
106
-msgstr "Tonen"
107
-
108
-#: modules/logdialog.py:29
109
-msgid "Errors detail"
110
-msgstr "Foutdetails"
111
-
112
-#: modules/logdialog.py:48
113
-msgid "_Close"
114
-msgstr ""
115
-
116
-#: modules/edition.py:35
117
-msgid "Are you sure you want to save settings?"
118
-msgstr ""
119
-
120
-#: modules/edition.py:107
121
-msgid "You can't restore a custom format to defaults."
122
-msgstr ""
123
-
124
-#: modules/edition.py:202
125
-msgid "Are you sure you want to remove this format?"
126
-msgstr ""
127
-
128
-#: modules/edition.py:249
129
-#, fuzzy
130
-msgid "Audio:"
131
-msgstr "Audio"
132
-
133
-#: modules/edition.py:257 modules/edition.py:276
134
-msgid "Default"
135
-msgstr ""
136
-
137
-#: modules/edition.py:260
138
+#: Curlew/curlew.py:172
139
 #, fuzzy
140
-msgid "Audio Bitrates"
141
-msgstr "Audiocompressie"
142
-
143
-#: modules/edition.py:262
144
-#, fuzzy
145
-msgid "Audio Frequencies"
146
-msgstr "Audiofrequentie"
147
-
148
-#: modules/edition.py:264 modules/curlew.py:551
149
-msgid "Audio Channels"
150
-msgstr "Audiokanalen"
151
-
152
-#: modules/edition.py:266
153
-#, fuzzy
154
-msgid "Audio Codecs"
155
-msgstr "Audiocodec"
156
-
157
-#: modules/edition.py:269
158
-#, fuzzy
159
-msgid "Video:"
160
-msgstr "Video"
161
-
162
-#: modules/edition.py:279
163
-#, fuzzy
164
-msgid "Video Bitrates"
165
-msgstr "Videocompressie"
166
-
167
-#: modules/edition.py:281 modules/curlew.py:591
168
-msgid "Video FPS"
169
-msgstr "Videobeelden per seconde"
170
+msgid "Add File"
171
+msgstr "Bestand toevoegen"
172
 
173
-#: modules/edition.py:283
174
-#, fuzzy
175
-msgid "Video Sizes"
176
-msgstr "Videoresolutie"
177
+#: Curlew/curlew.py:173
178
+msgid "Add files"
179
+msgstr "Bestanden toevoegen"
180
 
181
-#: modules/edition.py:285
182
+#: Curlew/curlew.py:176
183
 #, fuzzy
184
-msgid "Video Codecs"
185
-msgstr "Videocodec"
186
+msgid "Add Folder"
187
+msgstr "Bestand toevoegen"
188
 
189
-#: modules/edition.py:287
190
+#: Curlew/curlew.py:177
191
 #, fuzzy
192
-msgid "Aspect Ratios"
193
-msgstr "Beeldverhouding"
194
+msgid "Add folders"
195
+msgstr "Bestanden toevoegen"
196
 
197
-#: modules/edition.py:289
198
-#, fuzzy
199
-msgid "Other Options:"
200
-msgstr "Andere opties:"
201
curlew-0.2.1.tar.gz/po/pl.po -> curlew-0.1.22.3.tar.gz/po/pl.po Changed
201
 
1
@@ -6,7 +6,7 @@
2
 msgstr ""
3
 "Project-Id-Version: \n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-01-27 15:11+0100\n"
8
 "Last-Translator: Daniel Napora <napcok@gmail.com>\n"
9
 "Language-Team: Polish <kde-i18n-doc@kde.org>\n"
10
@@ -18,574 +18,433 @@
11
 "|| n%100>=20) ? 1 : 2);\n"
12
 "X-Generator: Lokalize 1.5\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Góra"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Dół"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Lewo"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Prawo"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "h"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "min"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "sek"
41
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
42
+msgid "Curlew"
43
+msgstr "Curlew"
44
 
45
-#: modules/favdialog.py:28 modules/curlew.py:480
46
-msgid "Favorite list"
47
-msgstr "Lista ulubionych"
48
+#: Curlew/curlew.py:172
49
+msgid "Add File"
50
+msgstr "Dodaj plik"
51
 
52
-#: modules/favdialog.py:38
53
-msgid "Format"
54
-msgstr "Format"
55
+#: Curlew/curlew.py:173
56
+msgid "Add files"
57
+msgstr "Dodaj pliki"
58
 
59
-#: modules/favdialog.py:55
60
-msgid "Up"
61
-msgstr ""
62
+#: Curlew/curlew.py:176
63
+msgid "Add Folder"
64
+msgstr "Dodaj katalog"
65
 
66
-#: modules/favdialog.py:61
67
-msgid "Down"
68
-msgstr ""
69
+#: Curlew/curlew.py:177
70
+msgid "Add folders"
71
+msgstr "Dodaj katalogi"
72
 
73
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
74
+#: Curlew/curlew.py:181
75
 msgid "Remove"
76
 msgstr "Usuń"
77
 
78
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
79
-#: modules/curlew.py:251
80
-msgid "Curlew"
81
-msgstr "Curlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "O programie Curlew"
86
-
87
-#: modules/about.py:38
88
-msgid "Easy to use Multimedia Converter for Linux"
89
-msgstr "Łatwy w użyciu konwerter multimedialny dla Linuksa"
90
+#: Curlew/curlew.py:182
91
+msgid "Remove files"
92
+msgstr "Usuń pliki"
93
 
94
-#: modules/about.py:51
95
-msgid "translator-credits"
96
-msgstr "Daniel Napora <napcok@gmail.com>"
97
+#: Curlew/curlew.py:186
98
+msgid "Clear"
99
+msgstr "Wyczyść"
100
 
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr " KB"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Wyczyść listę plików"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr " MB"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Konwertuj"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr " GB"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Rozpocznij konwertowanie"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Ukryj"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Stop"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Zatrzymaj konwertowanie"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Zakończ"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Pokaż"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Szczegóły błędów"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Dźwięk"
166
-
167
-#: modules/edition.py:257 modules/edition.py:276
168
-msgid "Default"
169
-msgstr ""
170
-
171
-#: modules/edition.py:260
172
-#, fuzzy
173
-msgid "Audio Bitrates"
174
-msgstr "Bitrate:"
175
-
176
-#: modules/edition.py:262
177
-#, fuzzy
178
-msgid "Audio Frequencies"
179
-msgstr "Częstotliwość"
180
-
181
-#: modules/edition.py:264 modules/curlew.py:551
182
-msgid "Audio Channels"
183
-msgstr "Kanały"
184
-
185
-#: modules/edition.py:266
186
-#, fuzzy
187
-msgid "Audio Codecs"
188
-msgstr "Kodek"
189
-
190
-#: modules/edition.py:269
191
-#, fuzzy
192
-msgid "Video:"
193
-msgstr "Wideo"
194
-
195
-#: modules/edition.py:279
196
-#, fuzzy
197
-msgid "Video Bitrates"
198
-msgstr "Bitrate"
199
-
200
-#: modules/edition.py:281 modules/curlew.py:591
201
curlew-0.2.1.tar.gz/po/ru.po -> curlew-0.1.22.3.tar.gz/po/ru.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-02-15 09:42-0000\n"
8
 "Last-Translator: Fayssal Chamekh <chamfay@gmail.com>\n"
9
 "Language-Team: None\n"
10
@@ -18,575 +18,433 @@
11
 "X-Poedit-SourceCharset: utf-8\n"
12
 "X-Generator: Poedit 1.5.4\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "Сверху"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Снизу"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Слева"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Справа"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
33
+msgid "Curlew"
34
 msgstr ""
35
 
36
-#: modules/customwidgets.py:177
37
-msgid "min"
38
-msgstr "мин"
39
-
40
-#: modules/customwidgets.py:182 modules/curlew.py:698
41
-msgid "sec"
42
-msgstr "сек"
43
+#: Curlew/curlew.py:172
44
+msgid "Add File"
45
+msgstr "Добавить файл"
46
 
47
-#: modules/favdialog.py:28 modules/curlew.py:480
48
-msgid "Favorite list"
49
-msgstr "Список избранного"
50
+#: Curlew/curlew.py:173
51
+msgid "Add files"
52
+msgstr "Добавить файлы"
53
 
54
-#: modules/favdialog.py:38
55
-msgid "Format"
56
-msgstr "Формат"
57
+#: Curlew/curlew.py:176
58
+msgid "Add Folder"
59
+msgstr "Добавить папку"
60
 
61
-#: modules/favdialog.py:55
62
-msgid "Up"
63
-msgstr ""
64
+#: Curlew/curlew.py:177
65
+msgid "Add folders"
66
+msgstr "Добавить папки"
67
 
68
-#: modules/favdialog.py:61
69
-msgid "Down"
70
-msgstr ""
71
-
72
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
73
+#: Curlew/curlew.py:181
74
 msgid "Remove"
75
 msgstr "Убрать"
76
 
77
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
78
-#: modules/curlew.py:251
79
-#, fuzzy
80
-msgid "Curlew"
81
-msgstr "О Churlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "О Churlew"
86
-
87
-#: modules/about.py:38
88
-msgid "Easy to use Multimedia Converter for Linux"
89
-msgstr "Легкий для использования Мультимедиа Конвертер для GNU/Linux"
90
+#: Curlew/curlew.py:182
91
+msgid "Remove files"
92
+msgstr "Убрать файлы"
93
 
94
-#: modules/about.py:51
95
-msgid "translator-credits"
96
-msgstr "о переводчиках"
97
+#: Curlew/curlew.py:186
98
+msgid "Clear"
99
+msgstr "Очистить"
100
 
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr " КБ"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Очистить список файлов"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr " МБ"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Запуск"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr " ГБ"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Запуск конвертации"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Скрыть"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Стоп"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Остановить конвертацию"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Выйти из программы"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Показать"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Подробности ошибки"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Звук"
166
-
167
-#: modules/edition.py:257 modules/edition.py:276
168
-msgid "Default"
169
-msgstr ""
170
+#: Curlew/curlew.py:207
171
+msgid "File Infos"
172
+msgstr "Свойства"
173
 
174
-#: modules/edition.py:260
175
-#, fuzzy
176
-msgid "Audio Bitrates"
177
-msgstr "Скорость потока"
178
-
179
-#: modules/edition.py:262
180
-#, fuzzy
181
-msgid "Audio Frequencies"
182
-msgstr "Частота звука"
183
-
184
-#: modules/edition.py:264 modules/curlew.py:551
185
-msgid "Audio Channels"
186
-msgstr "Звуковые каналы"
187
-
188
-#: modules/edition.py:266
189
-#, fuzzy
190
-msgid "Audio Codecs"
191
-msgstr "Звуковой кодек"
192
-
193
-#: modules/edition.py:269
194
-#, fuzzy
195
-msgid "Video:"
196
-msgstr "Видео"
197
-
198
-#: modules/edition.py:279
199
-#, fuzzy
200
-msgid "Video Bitrates"
201
curlew-0.2.1.tar.gz/po/sr.po -> curlew-0.1.22.3.tar.gz/po/sr.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1.22\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2014-02-24 17:27+0100\n"
8
 "Last-Translator: Ch_Brozović <chajbo@ro.ru>\n"
9
 "Language-Team: LANGUAGE <LL@li.org>\n"
10
@@ -16,574 +16,433 @@
11
 "Content-Type: text/plain; charset=UTF-8\n"
12
 "Content-Transfer-Encoding: 8bit\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "На врху"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "Доле"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "Лево"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "Десно"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "час"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "мин"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "сек"
41
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
42
+msgid "Curlew"
43
+msgstr "Curlew"
44
 
45
-#: modules/favdialog.py:28 modules/curlew.py:480
46
-msgid "Favorite list"
47
-msgstr "Листа омиљеног"
48
+#: Curlew/curlew.py:172
49
+msgid "Add File"
50
+msgstr "Додај фајл"
51
 
52
-#: modules/favdialog.py:38
53
-msgid "Format"
54
-msgstr "Формат"
55
+#: Curlew/curlew.py:173
56
+msgid "Add files"
57
+msgstr "Додај фајлове"
58
 
59
-#: modules/favdialog.py:55
60
-msgid "Up"
61
-msgstr ""
62
+#: Curlew/curlew.py:176
63
+msgid "Add Folder"
64
+msgstr "Додај фасциклу"
65
 
66
-#: modules/favdialog.py:61
67
-msgid "Down"
68
-msgstr ""
69
+#: Curlew/curlew.py:177
70
+msgid "Add folders"
71
+msgstr "Додај фасцикле"
72
 
73
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
74
+#: Curlew/curlew.py:181
75
 msgid "Remove"
76
 msgstr "Уклони"
77
 
78
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
79
-#: modules/curlew.py:251
80
-msgid "Curlew"
81
-msgstr "Curlew"
82
-
83
-#: modules/about.py:35 modules/curlew.py:328
84
-msgid "About Curlew"
85
-msgstr "О Curlew"
86
-
87
-#: modules/about.py:38
88
-msgid "Easy to use Multimedia Converter for Linux"
89
-msgstr "Једноставан конвертер мултимедије за Линукс"
90
+#: Curlew/curlew.py:182
91
+msgid "Remove files"
92
+msgstr "Уклоњени фајлови"
93
 
94
-#: modules/about.py:51
95
-msgid "translator-credits"
96
-msgstr "преводиоци"
97
+#: Curlew/curlew.py:186
98
+msgid "Clear"
99
+msgstr "Очисти"
100
 
101
-#: modules/functions.py:44
102
-msgid " KB"
103
-msgstr "кб"
104
+#: Curlew/curlew.py:187
105
+msgid "Clear files list"
106
+msgstr "Листа очишћених фајлова"
107
 
108
-#: modules/functions.py:47
109
-msgid " MB"
110
-msgstr "МБ"
111
+#: Curlew/curlew.py:194
112
+msgid "Convert"
113
+msgstr "Конвертуј"
114
 
115
-#: modules/functions.py:50
116
-msgid " GB"
117
-msgstr "ГБ"
118
+#: Curlew/curlew.py:195
119
+msgid "Start Conversion"
120
+msgstr "Почни конверзију"
121
 
122
-#: modules/tray.py:36 modules/tray.py:66
123
-msgid "Hide"
124
-msgstr "Сакриј"
125
+#: Curlew/curlew.py:199
126
+msgid "Stop"
127
+msgstr "Заустави"
128
 
129
-#: modules/tray.py:40 modules/curlew.py:314
130
+#: Curlew/curlew.py:200 Curlew/tray.py:40
131
 msgid "Stop Conversion"
132
 msgstr "Заустави конверзију"
133
 
134
-#: modules/tray.py:44
135
-msgid "Quit application"
136
-msgstr "Напусти програм"
137
-
138
-#: modules/tray.py:68
139
-msgid "Show"
140
-msgstr "Покажи"
141
-
142
-#: modules/logdialog.py:29
143
-msgid "Errors detail"
144
-msgstr "Детаљи грешке"
145
-
146
-#: modules/logdialog.py:48
147
-msgid "_Close"
148
-msgstr ""
149
-
150
-#: modules/edition.py:35
151
-msgid "Are you sure you want to save settings?"
152
-msgstr ""
153
-
154
-#: modules/edition.py:107
155
-msgid "You can't restore a custom format to defaults."
156
-msgstr ""
157
-
158
-#: modules/edition.py:202
159
-msgid "Are you sure you want to remove this format?"
160
-msgstr ""
161
-
162
-#: modules/edition.py:249
163
-#, fuzzy
164
-msgid "Audio:"
165
-msgstr "Звук"
166
-
167
-#: modules/edition.py:257 modules/edition.py:276
168
-msgid "Default"
169
-msgstr ""
170
-
171
-#: modules/edition.py:260
172
-#, fuzzy
173
-msgid "Audio Bitrates"
174
-msgstr "Брзина преноса звука"
175
-
176
-#: modules/edition.py:262
177
-#, fuzzy
178
-msgid "Audio Frequencies"
179
-msgstr "Звучна фреквенција"
180
-
181
-#: modules/edition.py:264 modules/curlew.py:551
182
-msgid "Audio Channels"
183
-msgstr "Звучни канали"
184
-
185
-#: modules/edition.py:266
186
-#, fuzzy
187
-msgid "Audio Codecs"
188
-msgstr "Звучни кодеци"
189
-
190
-#: modules/edition.py:269
191
-#, fuzzy
192
-msgid "Video:"
193
-msgstr "Видео"
194
-
195
-#: modules/edition.py:279
196
-#, fuzzy
197
-msgid "Video Bitrates"
198
-msgstr "Брзина преноса видеа"
199
-
200
-#: modules/edition.py:281 modules/curlew.py:591
201
curlew-0.2.1.tar.gz/po/zh_TW.po -> curlew-0.1.22.3.tar.gz/po/zh_TW.po Changed
201
 
1
@@ -7,7 +7,7 @@
2
 msgstr ""
3
 "Project-Id-Version: 0.1\n"
4
 "Report-Msgid-Bugs-To: \n"
5
-"POT-Creation-Date: 2016-02-21 22:48+0100\n"
6
+"POT-Creation-Date: 2014-04-09 22:18+0200\n"
7
 "PO-Revision-Date: 2013-09-26 12:58+0800\n"
8
 "Last-Translator: taijuin <taijuin@gmail.com>\n"
9
 "Language-Team: taijuin <taijuin@gmail.com>\n"
10
@@ -18,579 +18,439 @@
11
 "X-Poedit-SourceCharset: UTF-8\n"
12
 "X-Generator: Poedit 1.5.4\n"
13
 
14
-#: modules/customwidgets.py:50
15
-msgid "Top"
16
-msgstr "頂端"
17
-
18
-#: modules/customwidgets.py:58
19
-msgid "Bottom"
20
-msgstr "底部"
21
-
22
-#: modules/customwidgets.py:66
23
-msgid "Left"
24
-msgstr "左"
25
-
26
-#: modules/customwidgets.py:74
27
-msgid "Right"
28
-msgstr "右"
29
-
30
-#: modules/customwidgets.py:172
31
-msgid "hr"
32
-msgstr "小時"
33
-
34
-#: modules/customwidgets.py:177
35
-msgid "min"
36
-msgstr "分鐘"
37
-
38
-#: modules/customwidgets.py:182 modules/curlew.py:698
39
-msgid "sec"
40
-msgstr "秒鐘"
41
-
42
-#: modules/favdialog.py:28 modules/curlew.py:480
43
-msgid "Favorite list"
44
-msgstr "收藏清單"
45
-
46
-#: modules/favdialog.py:38
47
-msgid "Format"
48
-msgstr "格式"
49
-
50
-#: modules/favdialog.py:55
51
-msgid "Up"
52
-msgstr ""
53
-
54
-#: modules/favdialog.py:61
55
-msgid "Down"
56
-msgstr ""
57
-
58
-#: modules/favdialog.py:67 modules/edition.py:310 modules/curlew.py:2244
59
-msgid "Remove"
60
-msgstr "移除"
61
-
62
-#: modules/about.py:31 modules/tray.py:30 modules/curlew.py:181
63
-#: modules/curlew.py:251
64
+#: Curlew/curlew.py:154 Curlew/about.py:29 Curlew/tray.py:30
65
 msgid "Curlew"
66
 msgstr "Curlew"
67
 
68
-#: modules/about.py:35 modules/curlew.py:328
69
-msgid "About Curlew"
70
-msgstr "關於 Curlew"
71
-
72
-#: modules/about.py:38
73
-msgid "Easy to use Multimedia Converter for Linux"
74
-msgstr "適用於Linux,且易於使用之多媒體轉換器"
75
-
76
-#: modules/about.py:51
77
-msgid "translator-credits"
78
-msgstr "翻譯者榮譽榜"
79
-
80
-#: modules/functions.py:44
81
-msgid " KB"
82
-msgstr " KB"
83
-
84
-#: modules/functions.py:47
85
-msgid " MB"
86
-msgstr " MB"
87
-
88
-#: modules/functions.py:50
89
-msgid " GB"
90
-msgstr " GB"
91
-
92
-#: modules/tray.py:36 modules/tray.py:66
93
-msgid "Hide"
94
-msgstr "隱藏"
95
-
96
-#: modules/tray.py:40 modules/curlew.py:314
97
-msgid "Stop Conversion"
98
-msgstr "停止轉換"
99
-
100
-#: modules/tray.py:44
101
-msgid "Quit application"
102
-msgstr "結束應用程式"
103
-
104
-#: modules/tray.py:68
105
-msgid "Show"
106
-msgstr "顯示"
107
-
108
-#: modules/logdialog.py:29
109
-msgid "Errors detail"
110
-msgstr "錯誤細節"
111
-
112
-#: modules/logdialog.py:48
113
-msgid "_Close"
114
-msgstr ""
115
-
116
-#: modules/edition.py:35
117
-msgid "Are you sure you want to save settings?"
118
-msgstr ""
119
-
120
-#: modules/edition.py:107
121
-msgid "You can't restore a custom format to defaults."
122
-msgstr ""
123
-
124
-#: modules/edition.py:202
125
-msgid "Are you sure you want to remove this format?"
126
-msgstr ""
127
-
128
-#: modules/edition.py:249
129
-#, fuzzy
130
-msgid "Audio:"
131
-msgstr "音訊"
132
-
133
-#: modules/edition.py:257 modules/edition.py:276
134
-msgid "Default"
135
-msgstr ""
136
-
137
-#: modules/edition.py:260
138
-#, fuzzy
139
-msgid "Audio Bitrates"
140
-msgstr "音訊位元率"
141
-
142
-#: modules/edition.py:262
143
-#, fuzzy
144
-msgid "Audio Frequencies"
145
-msgstr "音訊頻率"
146
-
147
-#: modules/edition.py:264 modules/curlew.py:551
148
-msgid "Audio Channels"
149
-msgstr "音訊頻道"
150
-
151
-#: modules/edition.py:266
152
-#, fuzzy
153
-msgid "Audio Codecs"
154
-msgstr "音訊編解碼器"
155
-
156
-#: modules/edition.py:269
157
-#, fuzzy
158
-msgid "Video:"
159
-msgstr "影片"
160
-
161
-#: modules/edition.py:279
162
+#: Curlew/curlew.py:172
163
 #, fuzzy
164
-msgid "Video Bitrates"
165
-msgstr "影片位元率"
166
-
167
-#: modules/edition.py:281 modules/curlew.py:591
168
-msgid "Video FPS"
169
-msgstr "畫面更新率"
170
+msgid "Add File"
171
+msgstr "加入檔案"
172
 
173
-#: modules/edition.py:283
174
-#, fuzzy
175
-msgid "Video Sizes"
176
-msgstr "影片大小"
177
+#: Curlew/curlew.py:173
178
+msgid "Add files"
179
+msgstr "加入檔案"
180
 
181
-#: modules/edition.py:285
182
+#: Curlew/curlew.py:176
183
 #, fuzzy
184
-msgid "Video Codecs"
185
-msgstr "視訊編解碼器"
186
+msgid "Add Folder"
187
+msgstr "加入檔案"
188
 
189
-#: modules/edition.py:287
190
+#: Curlew/curlew.py:177
191
 #, fuzzy
192
-msgid "Aspect Ratios"
193
-msgstr "長寬比"
194
+msgid "Add folders"
195
+msgstr "加入檔案"
196
 
197
-#: modules/edition.py:289
198
-#, fuzzy
199
-msgid "Other Options:"
200
-msgstr "其他選項:"
201
curlew-0.2.1.tar.gz/setup.py -> curlew-0.1.22.3.tar.gz/setup.py Changed
187
 
1
@@ -4,24 +4,12 @@
2
 import sys
3
 from os.path import splitext, split
4
 
5
-# IMPORTANT!
6
-# You MUST have this packages installed in your system:
7
-#     "librsvg2-bin" to use rsvg-convert command.
8
-#     "intltool-debian" or "intltool" to use intltool-update command.
9
-
10
-VERSION = '0.2.1'
11
-SVG_CONVERT = 'rsvg-convert'
12
-UPDATE = 'intltool-update'
13
-UPDATE_DEBIAN = '/usr/share/intltool-debian/intltool-update'
14
+#NOTE: You must install imagemagick, intltool packages.
15
 
16
 doc_files  = ['LICENSE-ar.txt', 'LICENSE-en.txt', 'AUTHORS', 'ChangeLog', 'README']
17
 data_files = [('share/applications/', ['curlew.desktop']),
18
               ('share/icons/hicolor/scalable/apps', ['curlew.svg']),
19
-              ('share/pixmaps', ['curlew.svg']),
20
               ('share/doc/curlew', doc_files),
21
-              ('share/curlew', ['formats.cfg']),
22
-              #('share/curlew', ['formats.cfg', 'ffmpeg']), # Portable version
23
-              ('share/curlew/modules', glob("modules/*.py"))
24
               ]
25
 
26
 # Prepare curlew icons
27
@@ -29,18 +17,24 @@
28
     # Generate curlew.png icons
29
     for i in [16, 22, 24, 32, 36, 48, 64, 72, 96, 128]:
30
         call("mkdir -p hicolor/{0}x{0}/apps/".format(i), shell=True)
31
-        if call("{0} curlew.svg -w {1} -h {1} -o hicolor/{1}x{1}/apps/curlew.png".format(SVG_CONVERT, i), shell=True) > 0:
32
-            return 1
33
+        call("convert -background none curlew.svg -resize {0}x{0} hicolor/{0}x{0}/apps/curlew.png".format(i), shell=True)
34
+    
35
+    # List all svg files
36
+    svg_files = glob('Curlew/icons/*/*.svg')
37
+    for svg_file in svg_files:
38
+        png_file = splitext(svg_file)[0] + ".png"
39
+        ret = call("convert -background none {} -resize 48x48 {}".format(svg_file, png_file), shell=True)
40
     
41
     icons = map(lambda i: ('share/icons/'+i, [i+'/curlew.png', ]), glob("hicolor/*/apps"))
42
     data_files.extend(icons)
43
-    return 0
44
+    
45
+    return ret
46
     
47
     
48
 # Update locales
49
 def update_locale():
50
     # Make curlew.pot file from python source files.
51
-    py_files = " ".join(glob("modules/*.py"))
52
+    py_files = " ".join(glob("Curlew/*.py"))
53
     call("xgettext --keyword=_ -o po/curlew.pot {}".format(py_files), shell=True)
54
     
55
     po_files = glob("po/*.po")
56
@@ -49,8 +43,7 @@
57
         mo_path = "locale/{}/LC_MESSAGES/curlew.mo".format(lang)
58
         
59
         # Update po files
60
-        if call("{} -x -g po/curlew -d po/{}".format(UPDATE, lang), shell=True) > 0:
61
-            return 1
62
+        ret = call("intltool-update -g po/curlew -d po/{}".format(lang), shell=True)
63
         
64
         # Make locale directories
65
         call("mkdir -p locale/{}/LC_MESSAGES/".format(lang), shell=True)
66
@@ -58,10 +51,10 @@
67
         # Generate mo files
68
         call("msgfmt {} -o {}".format(po_file, mo_path), shell=True)
69
     
70
-    locales = map(lambda i: ('share/curlew/'+i, [i+'/curlew.mo', ]), glob('locale/*/LC_MESSAGES'))
71
+    locales = map(lambda i: ('share/'+i, [i+'/curlew.mo', ]), glob('locale/*/LC_MESSAGES'))
72
     data_files.extend(locales)
73
     
74
-    return 0
75
+    return ret
76
 
77
 
78
 def clean_all():
79
@@ -70,21 +63,21 @@
80
     call("rm -rfv hicolor dist locale build", shell=True)
81
     call("rm -rfv dist locale build", shell=True)
82
     call("rm -fv MANIFEST po/*.mo", shell=True)
83
-    call("rm -fv modules/icons/*/*.png", shell=True)
84
-    call("rm -fv modules/*.pyc *.pyc", shell=True)
85
-    call("rm -rfv modules/__pycache__", shell=True)
86
+    call("rm -fv Curlew/icons/*/*.png", shell=True)
87
+    call("rm -fv Curlew/*.pyc *.pyc", shell=True)
88
     exit(0)
89
 
90
 
91
 
92
-def uninstall_all():
93
+def uninstall():
94
     print("Uninstall...")
95
-    
96
     # Remove icons
97
     call("rm -rfv /usr/share/icons/hicolor/*/apps/curlew*", shell=True)
98
     call("rm -rfv /usr/*/share/icons/hicolor/*/apps/curlew*", shell=True)
99
-    call("rm -rfv /usr/share/pixmaps/curlew*", shell=True)
100
-    call("rm -rfv /usr/*/share/pixmaps/curlew*", shell=True)
101
+    
102
+    # Remove mos
103
+    call("rm -rfv /usr/share/locale/*/LC_MESSAGES/curlew.mo", shell=True)
104
+    call("rm -rfv /usr/*/share/locale/*/LC_MESSAGES/curlew.mo", shell=True)
105
     
106
     # Remove packages
107
     call("rm -rfv /usr/lib/python*/*-packages/[cC]urlew*", shell=True)
108
@@ -98,10 +91,6 @@
109
     call("rm -rfv /usr/share/applications/curlew*", shell=True)
110
     call("rm -rfv /usr/*/share/applications/curlew*", shell=True)
111
     
112
-    # Remove data files
113
-    call("rm -rfv /usr/share/curlew", shell=True)
114
-    call("rm -rfv /usr/*/share/curlew", shell=True)
115
-    
116
     # Remove script
117
     call("rm -rfv /usr/bin/curlew", shell=True)
118
     call("rm -rfv /usr/*/bin/curlew", shell=True)
119
@@ -113,24 +102,22 @@
120
     exit(0)
121
 
122
 
123
+
124
 # Begin
125
 if len(sys.argv) < 2: exit(1)
126
 
127
-# Check intltool
128
-if call('which /usr/share/intltool-debian/intltool-update > /dev/null', shell=True) == 0:
129
-    UPDATE = UPDATE_DEBIAN
130
-
131
 if sys.argv[1] in ['bdist', 'bdist_rpm', 'build', 'install']:
132
-    if (generate_icons() > 0 ) or (update_locale() > 0):
133
-        exit(1)
134
-elif sys.argv[1] == 'clean':     clean_all()
135
-elif sys.argv[1] == 'uninstall': uninstall_all()
136
+    if generate_icons() + update_locale() > 0: exit(1)
137
+elif sys.argv[1] == 'clean':
138
+    clean_all()
139
+elif sys.argv[1] == 'uninstall':
140
+    uninstall()
141
 
142
 
143
 setup(
144
       name="curlew",
145
       description='Easy to use multimedia converter in Linux',
146
-      long_description='''Curlew written in python and GTK3 and it depends on (ffmpeg/avconv).
147
+      long_description='''Curlew written in python and GTK3 and it depends on (ffmpeg/avconv, mencoder).
148
 
149
 Main Features:
150
 - Easy to use with simple user interface.
151
@@ -143,25 +130,27 @@
152
 - Combine subtitle with video file.
153
 - Show error details if exist.
154
 - And more ...''',
155
-      version=VERSION,
156
+      version="0.1.22.3",
157
       author='Fayssal Chamekh',
158
       author_email='chamfay@gmail.com',
159
-      url='http://sourceforge.net/projects/curlew',
160
+      url='https://github.com/chamfay/Curlew',
161
       license='Waqf License',
162
       platforms='Linux',
163
       scripts=['curlew'],
164
-      keywords=['convert', 'audio', 'video', 'ffmpeg', 'avconv'],
165
+      keywords=['convert', 'audio', 'video', 'ffmpeg', 'mencoder','avconv'],
166
       classifiers=[
167
-                     'Programming Language :: Python :: 3',
168
+                     'Programming Language :: Python',
169
                      'Operating System :: POSIX :: Linux',
170
-                     'Development Status :: 5 - Production/Stable',
171
-                     'Environment :: X11 Applications :: GTK',
172
+                     'Development Status :: 4 - Beta',
173
+                     'Environment :: X11 Applications :: Gtk',
174
                      'Natural Language :: English',
175
                      'Natural Language :: Arabic',
176
-                     'Natural Language :: French',
177
                      'Intended Audience :: End Users/Desktop',
178
                      'Topic :: Desktop Environment :: Gnome',
179
+                     'Topic :: Multimedia :: Video :: Conversion',
180
                      'Topic :: Multimedia :: Sound/Audio :: Conversion',
181
                      'Topic :: Utilities'],
182
-      data_files=data_files
183
+      data_files=data_files,
184
+      packages=['Curlew'],
185
+      package_data={'':['icons/*/*.png', 'formats.cfg']}
186
       )
187
curlew-0.2.1.tar.gz/deb_prepare.sh Deleted
12
 
1
@@ -1,10 +0,0 @@
2
-#!/bin/bash
3
-# python3-stdeb package needed.
4
-
5
-python3 setup.py --command-packages=stdeb.command debianize
6
-
7
-#
8
-sed -i 's|Package: python3-curlew|Package: curlew|g' $PWD/debian/control
9
-
10
-# Make deb
11
-#debuild -b
12
curlew-0.2.1.tar.gz/formats.cfg Deleted
201
 
1
@@ -1,1615 +0,0 @@
2
-[MP3 Audio]
3
-type = audio
4
-ab = 32k 64k 96k 128k 196k 256k
5
-afreq = 44100 8000 16000 22050 32000
6
-ach = default 2 1
7
-acodec = libmp3lame copy
8
-def_ab = 96k
9
-ff = mp3
10
-ext = mp3
11
-
12
-[Ac3 DVD - 192kbps Stereo]
13
-type = audio
14
-ab = 192k
15
-afreq = 48000
16
-ach = 2
17
-acodec = ac3
18
-ff = ac3
19
-ext = ac3
20
-
21
-[Ac3 DVD - 384kbps Stereo]
22
-type = audio
23
-ab = 384k
24
-afreq = 48000
25
-ach = 2
26
-acodec = ac3
27
-ff = ac3
28
-ext = ac3
29
-
30
-[MPEG4 Audio (m4a)]
31
-type = audio
32
-ab = 112k
33
-afreq = 48000
34
-ach = default 2
35
-acodec = libvo_aacenc aac
36
-ext = m4a
37
-
38
-[CDMA Phone Audio (3g2)]
39
-type = audio
40
-ab = 128k
41
-ach = default
42
-afreq = 22050
43
-acodec = libvo_aacenc aac
44
-ff = 3g2
45
-ext = 3g2
46
-
47
-[Opus Audio]
48
-type = audio
49
-ab = 6k 8k 12k 16k 32k 64k
50
-afreq = 16000 8000
51
-ach = default 2 1
52
-acodec = libopus
53
-def_ab = 12k
54
-extra = -vbr on
55
-ff = ogg
56
-ext = opus
57
-
58
-[Wav for CD]
59
-type = presets
60
-cmd = -vn -ar 44100
61
-ext = wav
62
-
63
-[Wave Audio]
64
-type = audio
65
-ab = 1000k 1200k 1411k 1500k 1600k
66
-afreq = 44100 8000 16000 22050 32000
67
-ach = default 2 1
68
-acodec = pcm_s16le pcm_u8 adpcm_ms adpcm_ima_wav
69
-def_ab = 1200k
70
-ff = wav
71
-ext = wav
72
-
73
-[Window Media Audio]
74
-type = audio
75
-ab = 16k 32k 64k 128k 192k 256k
76
-afreq = 44100 8000 16000 22050 32000
77
-ach = default 2 1
78
-acodec = wmav2 wmav1
79
-def_ab = 128k
80
-ff = asf
81
-ext = wma
82
-
83
-[OGG Vorbis Audio]
84
-type = ogg
85
-ab = default
86
-afreq = 44100 8000 16000 22050 32000
87
-ach = default 2 1
88
-acodec = libvorbis
89
-ff = ogg
90
-ext = ogg
91
-
92
-[OGG Theora Video]
93
-type = ogv
94
-ab = default
95
-afreq = 44100 8000 16000 22050 32000
96
-ach = default 2 1
97
-acodec = flac libvorbis
98
-vb = default
99
-vfps = default
100
-vcodec = libtheora
101
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
102
-vratio = default
103
-extra = -keyint_min 0 -g 360 -skip_threshold 0 -level 116
104
-ff = ogg
105
-ext = ogv
106
-
107
-
108
-
109
-[MPEG1 Video]
110
-type = video
111
-ab = 64k 96k 128k 196k 256k
112
-afreq = 44100 8000 16000 22050 32000
113
-ach = default 2 1
114
-acodec = libmp3lame mp2
115
-def_ab = 128k
116
-vb = 200k 320k 500k 700k 1100k 1500K
117
-def_vb = 1100k
118
-vfps = 30 25
119
-vcodec = mpeg1video
120
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200
121
-vratio = default
122
-ff = mpeg
123
-ext = mpg
124
-extra = -mbd rd -cmp 2 -subcmp 2 -bf 2
125
-
126
-[MPEG2 Video]
127
-type = video
128
-ab = 64k 96k 128k 196k 256k
129
-afreq = 44100 8000 16000 22050 32000
130
-ach = default 2 1
131
-acodec = libmp3lame mp2
132
-def_ab = 128k
133
-vb = 200k 320k 500k 700k 1100k 1500K
134
-def_vb = 1100k
135
-vfps = 30 25
136
-vcodec = mpeg2video
137
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200
138
-vratio = default
139
-ff = mpeg
140
-ext = mpg
141
-extra = -mbd rd -cmp 2 -subcmp 2 -bf 2
142
-
143
-
144
-[AVI Video]
145
-type = video
146
-ab = 64k 96k 128k 196k 256k
147
-afreq = 44100 8000 16000 22050 32000
148
-ach = default 2 1
149
-acodec = libmp3lame mp2
150
-def_ab = 128k
151
-vb = 200k 320k 500k 700k 1100k 1500K
152
-def_vb = 1100k
153
-vfps = 30 25
154
-vcodec = msmpeg4 msmpeg4v2 libxvid mpeg4
155
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
156
-vratio = default 1:1 4:3 5:4 16:9
157
-ff = avi
158
-ext = avi
159
-
160
-[MP4 Video]
161
-type = video
162
-ab = 64k 96k 128k 196k 256k
163
-afreq = 44100 8000 16000 22050 32000
164
-ach = default 2 1
165
-acodec = libvo_aacenc aac
166
-def_ab = 128k
167
-vb = 200k 320k 500k 700k 1100k 1500K
168
-def_vb = 1100k
169
-vfps = 30 25
170
-vcodec = mpeg4
171
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
172
-vratio = 4:3 1:1 4:3 5:4 16:9
173
-ff = mp4
174
-ext = mp4
175
-
176
-[Flash Video (FLV)]
177
-type = video
178
-ab = 64k 96k 128k 196k 256k
179
-afreq = 44100 8000 16000 22050 32000
180
-ach = default 2 1
181
-acodec = libmp3lame
182
-def_ab = 128k
183
-vb = 200k 320k 500k 700k 1100k 1500K
184
-def_vb = 1100k
185
-vfps = 25
186
-vcodec = flv
187
-vsize = default 320:240 640:480 800:600 1024:768 1600:1200 2048:1536 1280:1024 2560:2048 5120:4096 852:480 1366:768 1600:1024 1920:1200 2560:1600 3200:2048 3840:2400 6400:4096 7680:4800 320:200 640:350 852:480 1280:720 1920:1080
188
-vratio = default 1:1 4:3 5:4 16:9
189
-ff = flv
190
-ext = flv
191
-
192
-[Windows Media Video]
193
-type = video
194
-ab = 64k 96k 128k 196k 256k
195
-afreq = 44100 8000 16000 22050 32000
196
-ach = default 2 1
197
-acodec = wmav2 wmav1 libmp3lame
198
-def_ab = 128k
199
-vb = 200k 320k 500k 700k 1100k 1500K
200
-def_vb = 1100k
201
curlew-0.2.1.tar.gz/install.sh Deleted
10
 
1
@@ -1,8 +0,0 @@
2
-#!/bin/bash
3
-
4
-if [ $UID -eq 0 ]; then
5
-   python3 setup.py install --prefix=/usr
6
-else
7
-   echo "Run me as root!"
8
-fi
9
-
10
curlew-0.2.1.tar.gz/modules Deleted
2
 
1
-(directory)
2
curlew-0.2.1.tar.gz/modules/__init__.py Deleted
3
 
1
@@ -1,1 +0,0 @@
2
-
3
curlew-0.2.1.tar.gz/modules/about.py Deleted
60
 
1
@@ -1,58 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk
25
-
26
-PROGRAMMER = 'Fayssal Chamekh <chamfay@gmail.com>'
27
-WEBSITE = 'http://sourceforge.net/projects/curlew'
28
-VERSION='0.2.1'
29
-
30
-
31
-class About(Gtk.AboutDialog):
32
-    def __init__(self, parent):
33
-        Gtk.AboutDialog.__init__(self, parent=parent, wrap_license=True)
34
-        self.set_program_name(_('Curlew'))
35
-        self.set_authors([PROGRAMMER, 'Ehab El-Gedawy <ehabsas@gmail.com>', 'Andrej Kvasnica <andrej@gmail.com>'])
36
-        self.set_copyright("Copyright © 2012-2016 Fayssal Chamekh <chamfay@gmail.com>")
37
-        self.set_version(VERSION)
38
-        self.set_title(_('About Curlew'))
39
-        self.set_logo_icon_name('curlew')
40
-        self.set_icon_name('curlew')
41
-        self.set_comments(_('Easy to use Multimedia Converter for Linux'))
42
-        self.set_license("""
43
-Released under terms on waqf public license.
44
-
45
-This program is free software; you can redistribute it and/or modify it under the terms of the latest version waqf public license as published by ojuba.org.
46
-
47
-This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.
48
-        
49
-The latest version of the license can be found on:
50
-http://www.ojuba.org/wiki/doku.php/waqf/license
51
-""")
52
-        self.set_website(WEBSITE)
53
-        self.set_website_label(WEBSITE)
54
-        self.set_translator_credits(_("translator-credits"))
55
-        self.set_artists([PROGRAMMER, 'Smail <kungfu07mail@gmail.com>'])
56
-    
57
-    def show(self):
58
-        self.run()
59
-        self.destroy()
60
curlew-0.2.1.tar.gz/modules/codecs.py Deleted
61
 
1
@@ -1,59 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk, Pango
25
-from modules.functions import get_available_codecs
26
-
27
-class CodecsDialog(Gtk.Dialog):
28
-    def __init__(self, prnt, encoder, title):
29
-        Gtk.Dialog.__init__(self, parent=prnt, use_header_bar=True)
30
-        self.set_title(title)
31
-        self.set_size_request(700, 600)
32
-        self.set_border_width(6)
33
-        self.vbox.set_spacing(6)
34
-        
35
-        txt_info = Gtk.TextView()
36
-        txt_info.set_editable(False)
37
-        txt_info.set_cursor_visible(False)
38
-        txt_info.set_border_width(8)
39
-        
40
-        scroll = Gtk.ScrolledWindow()
41
-        scroll.set_shadow_type(Gtk.ShadowType.IN)
42
-        scroll.add(txt_info)
43
-        self.vbox.pack_start(scroll, True, True, 0)
44
-        
45
-        font_desc = Pango.FontDescription('Monospace')
46
-        txt_info.override_font(font_desc)
47
-        
48
-        txt_buffer = Gtk.TextBuffer()
49
-        txt_info.set_buffer(txt_buffer)
50
-        
51
-        # Show Codecs        
52
-        buff = get_available_codecs(encoder)
53
-        txt_buffer.set_text(buff)
54
-        
55
-    
56
-    
57
-    def show_dialog(self):
58
-        self.show_all()
59
-        self.run()
60
-        self.destroy()
61
curlew-0.2.1.tar.gz/modules/consts.py Deleted
35
 
1
@@ -1,33 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import os
22
-from os.path import join, dirname, realpath
23
-
24
-HOME = os.getenv("HOME")
25
-CONF_PATH = join(HOME, '.curlew')
26
-
27
-CONF_FILE = join(CONF_PATH, 'curlew.cfg')
28
-
29
-PKG_DIR = dirname(realpath(__file__))
30
-DTA_DIR = join(PKG_DIR, '../')
31
-
32
-ORG_FFILE = join(DTA_DIR, 'formats.cfg')
33
-USR_FFILE = join(CONF_PATH, 'formats.cfg')
34
-
35
curlew-0.2.1.tar.gz/modules/curlew.py Deleted
201
 
1
@@ -1,2352 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-
22
-from configparser import ConfigParser
23
-import gettext
24
-from glob import glob
25
-import os
26
-from os.path import basename, isdir, splitext, join, dirname, realpath, \
27
-isfile, exists, getsize, abspath
28
-import pickle
29
-import re
30
-from subprocess import Popen, PIPE, call
31
-import sys
32
-import time
33
-from shutil import copyfile, which
34
-from urllib.parse import unquote
35
-
36
-try:
37
-    import gi
38
-    gi.require_version('Gtk', '3.0')
39
-    
40
-    from gi.repository import Gtk, GLib, Gdk, GObject, GdkPixbuf, Gio
41
-    import dbus.glib, dbus.service
42
-    
43
-    from modules.customwidgets import LabeledHBox, TimeLayout, HScale, \
44
-    SpinsFrame, LabeledGrid, ComboWithEntry
45
-    from modules.about import About
46
-    from modules.functions import show_message, get_format_size, \
47
-    duration_to_time, time_to_duration, check_codec
48
-    from modules.logdialog import LogDialog
49
-    from modules.tray import StatusIcon
50
-    from modules.languages import LANGUAGES
51
-    from modules.favdialog import Favorite
52
-    from modules.waitdialog import WaitDialog
53
-    from modules.fileinfos import FileInfos
54
-    from modules.formats import Formats
55
-    from modules.infobars import InfoBar
56
-    from modules.codecs import CodecsDialog
57
-    from modules.consts import CONF_PATH, HOME, CONF_FILE, DTA_DIR, \
58
-    ORG_FFILE, USR_FFILE
59
-except Exception as e:
60
-    print(e)
61
-    sys.exit(1)
62
-
63
-# Files
64
-ERR_LOG_FILE = join(CONF_PATH, 'errors.log')
65
-FAV_FILE = join(CONF_PATH, 'fav.list')
66
-PASS_LOG = '/tmp/pass1log'
67
-PASS_1_FILE = '/tmp/pass1file'
68
-PREVIEW_FILE = '/tmp/Preview'
69
-IMG_PREV = '/tmp/img_prev.jpeg'
70
-INTERNAL_ENCODER = abspath(join(DTA_DIR, 'ffmpeg'))
71
-
72
-TEN_SECONDS = '10'
73
-
74
-# Localization.
75
-DOMAIN = 'curlew'
76
-LOCALDIR = join(DTA_DIR, 'locale')
77
-gettext.install(DOMAIN, LOCALDIR)
78
-
79
-# Create ".curlew" folder if not exist
80
-if not exists(CONF_PATH): os.mkdir(CONF_PATH)
81
-
82
-# Treeview cols nbrs
83
-C_SKIP = 0  # Skip (checkbox)
84
-C_NAME = 1  # File name
85
-C_FSIZE = 2  # File size
86
-C_FDURA = 3  # File duration
87
-C_ESIZE = 4  # Estimated output size
88
-C_ELAPT = 5  # Elapsed time
89
-C_REMN = 6  # Remaining time
90
-C_PRGR = 7  # Progress value
91
-C_STAT = 8  # Stat string
92
-C_PULS = 9  # Pulse
93
-C_FILE = 10  # complete file name 'complete_path/file.ext'
94
-
95
-
96
-#--- Main class        
97
-class Curlew(Gtk.ApplicationWindow):
98
-    
99
-    def on_codec_changed(self, *w):
100
-        msg = _('<span color="red"><i><b>{}</b> Codec not found!</i></span>')
101
-        acodec = self.c_acodec.get_active_text()
102
-        if acodec != 'default':
103
-            if check_codec(self.encoder, acodec):
104
-                self.l_acodec.set_text('')
105
-            else:
106
-                self.l_acodec.set_markup(msg.format(acodec))
107
-
108
-        vcodec = self.c_vcodec.get_active_text()
109
-        if vcodec != 'default':
110
-            if check_codec(self.encoder, vcodec):
111
-                self.l_vcodec.set_text('')
112
-            else:
113
-                self.l_vcodec.set_markup(msg.format(vcodec))
114
-     
115
-    def on_link_clicked(self, w):
116
-        dlg = CodecsDialog(self, self.encoder, self.link_label)
117
-        dlg.show_dialog()
118
-        return True
119
-    
120
-    
121
-    def on_select_fav(self, action, param, item):
122
-        sele_fmt = item.get_attribute_value(Gio.MENU_ATTRIBUTE_LABEL).get_string()
123
-        self.btn_formats.set_label(sele_fmt)
124
-        self.fill_options()
125
-    
126
-    
127
-    def load_submenu(self):
128
-        self.submenu.remove_all()
129
-        i = 0
130
-        for fformat in self.get_fav_list():
131
-            item = Gio.MenuItem.new(fformat, 'Fav.Select{}'.format(i))
132
-            self.submenu.append_item(item)
133
-            action_select = Gio.SimpleAction.new('Select{}'.format(i))
134
-            action_select.connect('activate', self.on_select_fav, item)
135
-            self.action_group.insert(action_select)
136
-            i += 1
137
-    
138
-    
139
-    def on_add_fav(self, action, param):
140
-        fav_list = self.get_fav_list()
141
-        fav_format = self.btn_formats.get_label()
142
-        
143
-        # format already exist
144
-        if fav_format in fav_list:
145
-            return
146
-        
147
-        fav_list.append(fav_format)
148
-        self.save_fav_list(fav_list)
149
-        
150
-        self.load_submenu()
151
-    
152
-    def save_fav_list(self, fav_list):
153
-        favfile = open(FAV_FILE, "wb")
154
-        pickle.dump(fav_list, favfile)
155
-        favfile.close()
156
-    
157
-    
158
-    def on_edit_fav(self, action, param):
159
-        fav_dlg = Favorite(self, self.get_fav_list())
160
-        fav_dlg.run()
161
-        fav_dlg.save(FAV_FILE)
162
-        self.load_submenu()
163
-        fav_dlg.destroy()
164
-
165
-    
166
-    def on_cb_remove_toggled(self, w):
167
-        self.cb_rename.set_sensitive(not w.get_active())
168
-    
169
-    
170
-    def on_cb_rename_toggled(self, w):
171
-        self.cb_remove.set_sensitive(not w.get_active())
172
-    
173
-    
174
-    def on_entry_player_changed(self, e):
175
-        e.set_icon_from_icon_name(Gtk.EntryIconPosition.PRIMARY, e.get_text())
176
-        self.player = e.get_text()
177
-    
178
-    
179
-    def __init__(self, app, *files_list):
180
-        
181
-        # Install Local
182
-        self.install_locale()
183
-
184
-        # Super class
185
-        Gtk.Window.__init__(self, title=_('Curlew'), application=app)
186
-        self.app = app
187
-        
188
-        # Global menu
189
-        gmenu = Gio.Menu()
190
-        self.app.set_app_menu(gmenu)
191
-        
192
-        # Global menu items
193
-        gmenu.append(_("About"), "win.about")
194
-        about_action = Gio.SimpleAction.new("about", None)
195
-        about_action.connect("activate", self.on_btn_about_clicked)
196
-        self.add_action(about_action)
197
-        
198
-        gmenu.append(_("Quit"), "win.quit")
199
-        quit_action = Gio.SimpleAction.new("quit", None)
200
-        quit_action.connect("activate", self.quit_cb)
201
curlew-0.2.1.tar.gz/modules/customwidgets.py Deleted
201
 
1
@@ -1,251 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk
25
-
26
-
27
-class SpinsFrame(Gtk.Frame):
28
-    '''4 SpinButton collection'''
29
-    def __init__(self, title):
30
-        Gtk.Frame.__init__(self)
31
-        
32
-        self._top = 0
33
-        self._bottom = 0
34
-        self._left = 0
35
-        self._right = 0
36
-        self._sum = 0
37
-        
38
-        hbox = Gtk.Box(sensitive=False, spacing=4, border_width=4)
39
-        self.add(hbox)
40
-        
41
-        self.check_btn = Gtk.CheckButton(title)
42
-        self.set_label_widget(self.check_btn)
43
-        
44
-        # Adjustments
45
-        adj_top    = Gtk.Adjustment(0, 0, 10000, 1)
46
-        adj_bottom = Gtk.Adjustment(0, 0, 10000, 1)
47
-        adj_left   = Gtk.Adjustment(0, 0, 10000, 1)
48
-        adj_right  = Gtk.Adjustment(0, 0, 10000, 1)
49
-        
50
-        # Top spin
51
-        self.spin_top = Gtk.SpinButton(adjustment=adj_top)
52
-        self.spin_top.set_numeric(True)
53
-        hbox.pack_start(Gtk.Label(_('Top')), False, False, 0)
54
-        hbox.pack_start(self.spin_top, False, False, 0)
55
-        
56
-        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
57
-        
58
-        # bottom spin
59
-        self.spin_bottom = Gtk.SpinButton(adjustment=adj_bottom)
60
-        self.spin_bottom.set_numeric(True)
61
-        hbox.pack_start(Gtk.Label(_('Bottom')), False, False, 0)
62
-        hbox.pack_start(self.spin_bottom, False, False, 0)
63
-        
64
-        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
65
-        
66
-        # Left Spin
67
-        self.spin_left = Gtk.SpinButton(adjustment=adj_left)
68
-        self.spin_left.set_numeric(True)
69
-        hbox.pack_start(Gtk.Label(_('Left')), False, False, 0)
70
-        hbox.pack_start(self.spin_left, False, False, 0)
71
-        
72
-        hbox.pack_start(Gtk.VSeparator(), False, False, 8)
73
-        
74
-        # Right spin
75
-        self.spin_right = Gtk.SpinButton(adjustment=adj_right)
76
-        self.spin_right.set_numeric(True)
77
-        hbox.pack_start(Gtk.Label(_('Right')), False, False, 0)
78
-        hbox.pack_start(self.spin_right, False, False, 0)
79
-        
80
-        
81
-        # Connection
82
-        self.spin_top.connect('value-changed', self._on_spins_changed)
83
-        self.spin_bottom.connect('value-changed', self._on_spins_changed)
84
-        self.spin_left.connect('value-changed', self._on_spins_changed)
85
-        self.spin_right.connect('value-changed', self._on_spins_changed)
86
-        self.check_btn.connect('toggled', self._on_check_cb, hbox)
87
-    
88
-    def _on_check_cb(self, check_btn, hbox):
89
-        hbox.set_sensitive(check_btn.get_active())
90
-    
91
-    def _on_spins_changed(self, spin):
92
-        self._top = self.spin_top.get_value_as_int()
93
-        self._bottom = self.spin_bottom.get_value_as_int()
94
-        self._left = self.spin_left.get_value_as_int()
95
-        self._right = self.spin_right.get_value_as_int()
96
-        
97
-        self._sum = self._top + self._bottom + self._left + self._right
98
-    
99
-    def get_active(self):
100
-        return self.check_btn.get_active() and self._sum != 0
101
-    
102
-    def get_crop(self):
103
-        return 'crop=iw-{}:ih-{}:{}:{}'.format(self._left+self._right,
104
-                                               self._top+self._bottom,
105
-                                               self._left, self._top)
106
-    
107
-    def get_pad(self):
108
-        return 'pad=iw+{}:ih+{}:{}:{}'.format(self._left+self._right,
109
-                                               self._top+self._bottom,
110
-                                               self._left, self._top)
111
-    
112
-    
113
-class HScale(Gtk.HScale):
114
-    def __init__(self, container, def_value, min_value, max_value, step=1):
115
-        Gtk.HScale.__init__(self)
116
-        container.pack_start(self, True, True, 0)
117
-        adj = Gtk.Adjustment.new(def_value, min_value, max_value, step, step, 0)
118
-        self.set_adjustment(adj)
119
-        self.set_value_pos(Gtk.PositionType.RIGHT)
120
-        self.set_digits(0)
121
-        
122
-
123
-class LabeledHBox(Gtk.Box):
124
-    ''' hbox with label'''
125
-    def __init__(self, label, container=None):
126
-        Gtk.Box.__init__(self, spacing=4)
127
-        _label = Gtk.Label(label, use_markup=True)
128
-        _label.set_alignment(0, 0.5)
129
-        self.pack_start(_label, False, False, 0)
130
-        if container != None:
131
-            container.pack_start(self, False, False, 0)
132
-
133
-
134
-class LabeledGrid(Gtk.Grid):
135
-    def __init__(self, container):
136
-        Gtk.Grid.__init__(self)
137
-        self.set_column_spacing(2)
138
-        self.set_row_spacing(4)
139
-        self.set_row_homogeneous(False)
140
-        self._n_childs = 0
141
-        container.pack_start(self, False, False, 0)
142
-        
143
-    def append_row(self, label, widget, expanded=False):
144
-        _label = Gtk.Label(label, use_markup=True)
145
-        _label.set_alignment(0.0, 0.5)
146
-        _hbox = Gtk.Box()
147
-        _hbox.set_hexpand(True)
148
-        _hbox.pack_start(widget, expanded, expanded, 0)
149
-        self.attach(_label, 0, self._n_childs, 1, 1)
150
-        self.attach(_hbox, 1, self._n_childs, 1, 1)
151
-        self._n_childs += 1
152
-
153
-    def append_title(self, label):
154
-        _label = Gtk.Label('<b>{}</b>'.format(label), use_markup=True)
155
-        _label.set_alignment(0, 0.5)
156
-        self.attach(_label, 0, self._n_childs, 1, 1)
157
-        self._n_childs += 1
158
-
159
-
160
-class TimeLayout(Gtk.Box):
161
-    def __init__(self, container, label):
162
-        '''    Time widget    '''
163
-        Gtk.Box.__init__(self)
164
-        self._spin_h = Gtk.SpinButton().new_with_range(0, 5, 1)
165
-        self._spin_m = Gtk.SpinButton().new_with_range(0, 59, 1)
166
-        self._spin_s = Gtk.SpinButton().new_with_range(0, 59, 1)
167
-        
168
-        _label = Gtk.Label(label, use_markup=True)
169
-        _label.set_alignment(0, 0.5)
170
-        _label.set_width_chars(10)
171
-        
172
-        self.pack_start(_label, False, False, 0)
173
-        
174
-        self.pack_start(self._spin_h, False, False, 3)
175
-        self.pack_start(Gtk.Label(label=_('hr')), False, False, 0)
176
-        
177
-        self.pack_start(Gtk.Label(6*' '), False, False, 0)
178
-        
179
-        self.pack_start(self._spin_m, False, False, 3)
180
-        self.pack_start(Gtk.Label(label=_('min')), False, False, 0)
181
-        
182
-        self.pack_start(Gtk.Label(6*' '), False, False, 0)
183
-        
184
-        self.pack_start(self._spin_s, False, False, 3)
185
-        self.pack_start(Gtk.Label(label=_('sec')), False, False, 0)
186
-        
187
-        container.pack_start(self, False, False, 0)
188
-    
189
-    def set_duration(self, duration):
190
-        ''' Set duration in seconds '''
191
-        self._spin_h.set_value(duration/3600)
192
-        self._spin_m.set_value((duration%3600)/60)
193
-        self._spin_s.set_value((duration%3600)%60)
194
-    
195
-    def get_duration(self):
196
-        ''' Return duration in sec '''
197
-        return self._spin_h.get_value()*3600 \
198
-                       + self._spin_m.get_value()*60 \
199
-                       + self._spin_s.get_value()
200
-    
201
curlew-0.2.1.tar.gz/modules/edition.py Deleted
201
 
1
@@ -1,336 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-from configparser import ConfigParser, NoSectionError
22
-
23
-import gi
24
-gi.require_version('Gtk', '3.0')
25
-
26
-from gi.repository import Gtk, GLib
27
-
28
-from modules.customwidgets import LabeledGrid, ButtonWithIcon
29
-from modules.consts import CONF_FILE, ORG_FFILE
30
-from modules.functions import show_message
31
-
32
-
33
-class FormatEditor(Gtk.Dialog):
34
-
35
-    # Save settings
36
-    def on_btn_save(self, *args):
37
-        # Confirm
38
-        if show_message(self,
39
-                        _('Are you sure you want to save settings?'),
40
-                        Gtk.MessageType.QUESTION,
41
-                        Gtk.ButtonsType.YES_NO) == Gtk.ResponseType.NO:
42
-            return
43
-        
44
-        conf = ConfigParser()
45
-        conf.read(self.ffile)
46
-        
47
-        section = self.entry_frmt.get_text()
48
-        
49
-        if not conf.has_section(section):
50
-            conf.add_section(section)
51
-            conf[section]['type'] = conf[self.format]['type']
52
-            try:
53
-                conf[section]['ff'] = conf[self.format]['ff']
54
-            except: pass
55
-            conf[section]['ext'] = conf[self.format]['ext']
56
-            conf[section]['flag'] = 'custom'
57
-        
58
-        # audio
59
-        if self.entry_ab.get_sensitive():
60
-            ab = self.entry_ab.get_text()
61
-            conf[section]['ab'] = ab
62
-            lab = ab.split()
63
-            conf[section]['def_ab'] = lab[self.spin_def_ab.get_value_as_int()-1]
64
-        if self.entry_afreq.get_sensitive():
65
-            conf[section]['afreq'] = self.entry_afreq.get_text()
66
-        if self.entry_ach.get_sensitive():
67
-            conf[section]['ach'] = self.entry_ach.get_text()
68
-        if self.entry_acodec.get_sensitive():
69
-            conf[section]['acodec'] = self.entry_acodec.get_text()
70
-        
71
-        # video
72
-        if self.entry_vb.get_sensitive():
73
-            vb = self.entry_vb.get_text()
74
-            conf[section]['vb'] = vb
75
-            lvb = vb.split()
76
-            conf[section]['def_vb'] = lvb[self.spin_def_vb.get_value_as_int()-1]
77
-        if self.entry_vfps.get_sensitive():
78
-            conf[section]['vfps'] =  self.entry_vfps.get_text()
79
-        if self.entry_vsize.get_sensitive():
80
-            conf[section]['vsize'] =  self.entry_vsize.get_text()
81
-        if self.entry_vcodec.get_sensitive():
82
-            conf[section]['vcodec'] =  self.entry_vcodec.get_text()
83
-        if self.entry_vratio.get_sensitive():
84
-            conf[section]['vratio'] =  self.entry_vratio.get_text()
85
-        
86
-        if self.entry_extra.get_sensitive():
87
-            conf[section]['extra'] =  self.entry_extra.get_text()
88
-        
89
-        with open(self.ffile, 'w') as configfile:
90
-            conf.write(configfile)
91
-        
92
-        if section != self.format:
93
-            self.store.append([section])
94
-        
95
-        # close dialog        
96
-        self.close()
97
-    
98
-    def on_btn_def(self, *args):
99
-        
100
-        section = self.format
101
-        
102
-        conf_src = ConfigParser()
103
-        conf_src.read(ORG_FFILE)
104
-        conf_dest = ConfigParser()
105
-        conf_dest.read(self.ffile)
106
-        
107
-        try:
108
-            opts = conf_src.options(section)
109
-        except NoSectionError:
110
-            show_message(self,
111
-                         _('You can\'t restore a custom format to defaults.'),
112
-                         Gtk.MessageType.WARNING)
113
-            return
114
-        
115
-        for opt in opts:
116
-            conf_dest[section][opt] = conf_src[section][opt]
117
-        
118
-        with open(self.ffile, 'w') as configfile:
119
-            conf_dest.write(configfile)
120
-        
121
-        self.load_settings()
122
-    
123
-    
124
-    def get_formats_file(self):
125
-        conf = GLib.KeyFile()        
126
-        conf.load_from_file(CONF_FILE, GLib.KeyFileFlags.NONE)
127
-        frmts_file = conf.get_string('configs', 'formats_file')
128
-        conf.unref()
129
-        return frmts_file
130
-    
131
-
132
-    def set_sensitivity(self, media_type):
133
-        sens = {
134
-                 'audio':   [True, True, True, True, False, False, False, False, False],
135
-                 'video':   [True, True, True, True, True, True, True, True, True],
136
-                 'presets': [False, False, False, False, False, False, False, False, False],
137
-                 'copy': [False, False, False, False, False, False, False, False, False]
138
-                 }
139
-         
140
-        self.entry_ab.set_sensitive(sens[media_type][0])
141
-        self.spin_def_ab.set_sensitive(sens[media_type][0])
142
-        self.entry_afreq.set_sensitive(sens[media_type][1])
143
-        self.entry_ach.set_sensitive(sens[media_type][2])
144
-        self.entry_acodec.set_sensitive(sens[media_type][3])
145
-        
146
-        self.entry_vb.set_sensitive(sens[media_type][4])
147
-        self.spin_def_vb.set_sensitive(sens[media_type][4])
148
-        self.entry_vfps.set_sensitive(sens[media_type][5])
149
-        self.entry_vsize.set_sensitive(sens[media_type][6])
150
-        self.entry_vcodec.set_sensitive(sens[media_type][7])
151
-        self.entry_vratio.set_sensitive(sens[media_type][8])
152
-    
153
-    
154
-    def load_settings(self):
155
-        conf = ConfigParser()
156
-        conf.read(self.ffile)
157
-        section = self.format
158
-        
159
-        self.btn_remove.set_sensitive(conf.has_option(section, 'flag'))
160
-        
161
-        self.set_sensitivity(conf[section]['type'])
162
-        self.entry_frmt.set_text(section)
163
-        
164
-        # audio
165
-        if conf.has_option(section, 'ab'):
166
-            abitrate = conf[section]['ab']
167
-            self.entry_ab.set_text(abitrate)
168
-            abitrates = abitrate.split()
169
-            if conf.has_option(section, 'def_ab'):
170
-                self.spin_def_ab.set_value(abitrates.index(conf[section]['def_ab'])+1)
171
-        if conf.has_option(section, 'afreq'):
172
-            self.entry_afreq.set_text(conf[section]['afreq'])
173
-        if conf.has_option(section, 'ach'):
174
-            self.entry_ach.set_text(conf[section]['ach'])
175
-        if conf.has_option(section, 'acodec'):
176
-            self.entry_acodec.set_text(conf[section]['acodec'])
177
-        
178
-        # video
179
-        if conf.has_option(section, 'vb'):
180
-            vbitrate = conf[section]['vb']
181
-            self.entry_vb.set_text(vbitrate)
182
-            vbitrates = vbitrate.split()
183
-            if conf.has_option(section, 'def_vb'):
184
-                self.spin_def_vb.set_value(vbitrates.index(conf[section]['def_vb'])+1)
185
-        if conf.has_option(section, 'vfps'):
186
-            self.entry_vfps.set_text(conf[section]['vfps'])
187
-        if conf.has_option(section, 'vsize'):
188
-            self.entry_vsize.set_text(conf[section]['vsize'])
189
-        if conf.has_option(section, 'vcodec'):
190
-            self.entry_vcodec.set_text(conf[section]['vcodec'])
191
-        if conf.has_option(section, 'vratio'):
192
-            self.entry_vratio.set_text(conf[section]['vratio'])
193
-        
194
-        if conf.has_option(section, 'extra'):
195
-            self.entry_extra.set_text(conf[section]['extra'])
196
-    
197
-
198
-    def on_bitrate_changed(self, w, spin):
199
-        list_len = len(w.get_text().split())
200
-        spin.set_range(1, list_len)    
201
curlew-0.2.1.tar.gz/modules/favdialog.py Deleted
114
 
1
@@ -1,112 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk, Gdk
25
-import pickle
26
-
27
-class Favorite(Gtk.Dialog):
28
-    def __init__(self, prnt, fav_list):
29
-        Gtk.Dialog.__init__(self, parent=prnt, use_header_bar=True)
30
-        #self.set_property("use-header-bar", True)
31
-        self.set_title(_('Favorite list'))
32
-        self.set_icon_name('curlew')
33
-        self.set_border_width(4)
34
-        self.set_size_request(450, 400)
35
-        self.store = Gtk.ListStore(str)
36
-        self.list_view = Gtk.TreeView(self.store)
37
-        self.list_view.connect("key-press-event", self.on_key_press)
38
-        header = self.get_header_bar()
39
-        
40
-        cell = Gtk.CellRendererText()
41
-        col = Gtk.TreeViewColumn(_("Format"), cell, text=0)
42
-        self.list_view.append_column(col)
43
-        
44
-        g_vbox = Gtk.Box(spacing=6, orientation=Gtk.Orientation.VERTICAL)
45
-        
46
-        scroll = Gtk.ScrolledWindow()
47
-        scroll.set_shadow_type(Gtk.ShadowType.IN)
48
-        scroll.add(self.list_view)
49
-        
50
-        g_vbox.pack_start(scroll, True, True, 0)
51
-        
52
-        
53
-        box_up_down = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
54
-        Gtk.StyleContext.add_class(box_up_down.get_style_context(), "linked")        
55
-        header.pack_end(box_up_down)
56
-        
57
-        btn_up = Gtk.Button()
58
-        btn_up.set_tooltip_text(_('Up'))
59
-        btn_up.set_image(Gtk.Image.new_from_icon_name('go-up-symbolic', Gtk.IconSize.MENU))
60
-        btn_up.connect('clicked', self.go_up)
61
-        box_up_down.pack_start(btn_up, False, False, 0)
62
-        
63
-        btn_down = Gtk.Button()
64
-        btn_down.set_tooltip_text(_('Down'))
65
-        btn_down.set_image(Gtk.Image.new_from_icon_name('go-down-symbolic', Gtk.IconSize.MENU))
66
-        btn_down.connect('clicked', self.go_down)
67
-        box_up_down.pack_start(btn_down, False, False, 0)
68
-        
69
-        btn_delete = Gtk.Button()
70
-        btn_delete.set_tooltip_text(_('Remove'))
71
-        btn_delete.set_image(Gtk.Image.new_from_icon_name('list-remove-symbolic', Gtk.IconSize.MENU))
72
-        btn_delete.connect('clicked', self.delete_item)
73
-        header.pack_end(btn_delete)
74
-        
75
-        self.vbox.pack_start(g_vbox, True, True, 0)
76
-        
77
-        # load
78
-        for fformat in fav_list:
79
-            self.store.append((fformat,))
80
-        
81
-        self.show_all()
82
-    
83
-    # Delete Item
84
-    def delete_item(self, *args):
85
-        sele = self.get_selected_iter()
86
-        if sele:
87
-            self.store.remove(sele)
88
-    
89
-    def go_up(self, widget):
90
-        sel_iter = self.get_selected_iter()
91
-        if sel_iter:
92
-            self.store.move_before(sel_iter, self.store.iter_previous(sel_iter))
93
-    
94
-    def go_down(self, widget):
95
-        sel_iter = self.get_selected_iter()
96
-        if sel_iter:
97
-            self.store.move_after(sel_iter, self.store.iter_next(sel_iter))
98
-    
99
-    def get_selected_iter(self):
100
-        return self.list_view.get_selection().get_selected()[1]
101
-    
102
-    def save(self, file_name):
103
-        fav_list = []
104
-        for row in self.store:
105
-            fav_list.append(row[0])
106
-        favfile = open(file_name, "wb")
107
-        pickle.dump(fav_list, favfile)
108
-        favfile.close()
109
-    
110
-    def on_key_press(self, widget, event):
111
-        if event.keyval == Gdk.KEY_Delete:
112
-            self.delete_item()
113
-    
114
curlew-0.2.1.tar.gz/modules/fileinfos.py Deleted
62
 
1
@@ -1,59 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk, Pango
25
-from subprocess import check_output
26
-
27
-class FileInfos(Gtk.Dialog):
28
-    def __init__(self, prnt, file_name):
29
-        Gtk.Dialog.__init__(self, parent=prnt, use_header_bar=True)
30
-        self.set_title(_("File informations"))
31
-        self.set_size_request(700, 600)
32
-        self.set_border_width(6)
33
-        self.vbox.set_spacing(6)
34
-        
35
-        txt_info = Gtk.TextView()
36
-        txt_info.set_editable(False)
37
-        txt_info.set_cursor_visible(False)
38
-        txt_info.set_border_width(8)
39
-        
40
-        scroll = Gtk.ScrolledWindow()
41
-        scroll.set_shadow_type(Gtk.ShadowType.IN)
42
-        scroll.add(txt_info)
43
-        self.vbox.pack_start(scroll, True, True, 0)
44
-        
45
-        font_desc = Pango.FontDescription('Monospace')
46
-        txt_info.override_font(font_desc)
47
-        
48
-        txt_buffer = Gtk.TextBuffer()
49
-        txt_info.set_buffer(txt_buffer)
50
-        
51
-        # Show info        
52
-        buf = check_output('mediainfo "{}"'.format(file_name), shell=True, universal_newlines=True)
53
-        txt_buffer.set_text(buf)
54
-        
55
-    
56
-    
57
-    def show_dialog(self):
58
-        self.show_all()
59
-        self.run()
60
-        self.destroy()
61
\ No newline at end of file
62
curlew-0.2.1.tar.gz/modules/formats.py Deleted
151
 
1
@@ -1,149 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk
25
-from modules.edition import FormatEditor
26
-
27
-class Formats(Gtk.Popover):
28
-    
29
-    def on_select_format(self, *args):
30
-        selected_iter = self.tree_sel.get_selected()[1]
31
-        if selected_iter == None:
32
-            self.lbl.set_markup(self.no_format)
33
-            return
34
-        self.selected_format = self.tree_filter[selected_iter][0]
35
-        self.wind.btn_formats.set_label(self.selected_format)
36
-        self.hide()
37
-        self.wind.fill_options()
38
-    
39
-    
40
-    def on_edit_format(self, widget):
41
-        selected_iter = self.tree_sel.get_selected()[1]
42
-        if selected_iter == None:
43
-            self.lbl.set_markup(self.no_format)
44
-            return
45
-        self.selected_format = self.tree_filter[selected_iter][0]
46
-        self.hide()
47
-        dlg = FormatEditor(self.wind, self.selected_format, self.store)
48
-        dlg.show_dialog()
49
-    
50
-    
51
-    def on_closed(self, *args):
52
-        self.lbl.set_markup('')
53
-    
54
-    
55
-    def __init__(self, wind, formats_list, curr_format, store):
56
-        self.wind = wind
57
-        self.formats_list = formats_list
58
-        self.selected_format = curr_format
59
-        
60
-        self.no_format = _('<i><span color="red">No format selected!</span></i>')
61
-        
62
-        Gtk.Popover.__init__(self)
63
-        self.set_border_width(4)
64
-        self.connect('closed', self.on_closed)
65
-        
66
-        vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=4)
67
-        self.add(vbox)
68
-        
69
-        #
70
-        self.e_search = Gtk.SearchEntry()
71
-        self.e_search.set_activates_default(True)
72
-        self.e_search.connect('changed', self.on_entry_search)
73
-        self.e_search.set_direction(Gtk.TextDirection.LTR)
74
-        vbox.pack_start(self.e_search, False, True, 2)
75
-        
76
-        
77
-        #
78
-        self.store = store # Gtk.ListStore(str)
79
-        self.tree_filter = self.store.filter_new()
80
-        self.tree_filter.set_visible_func(self.match_func)
81
-        
82
-        self.tree_formats = Gtk.TreeView(self.tree_filter)
83
-        self.tree_formats.set_headers_visible(False)
84
-        self.tree_formats.set_direction(Gtk.TextDirection.LTR)
85
-        self.tree_formats.set_grid_lines(Gtk.TreeViewGridLines.HORIZONTAL)
86
-        self.tree_formats.connect('row-activated', self.on_choosed_format)
87
-        
88
-        self.tree_sel = self.tree_formats.get_selection()
89
-        
90
-        # cell
91
-        cell = Gtk.CellRendererText()
92
-        col = Gtk.TreeViewColumn(None, cell, text=0)
93
-        self.tree_formats.append_column(col)
94
-        
95
-        scroll = Gtk.ScrolledWindow()
96
-        scroll.set_size_request(450, 285)
97
-        scroll.set_shadow_type(Gtk.ShadowType.ETCHED_IN)
98
-        scroll.add(self.tree_formats)
99
-        vbox.pack_start(scroll, True, True, 0)
100
-        
101
-        # Load formats
102
-        for fmt in self.formats_list:
103
-            self.store.append([fmt])
104
-        
105
-        self.store.set_sort_column_id(0, Gtk.SortType.ASCENDING)
106
-        
107
-        # hbox btns
108
-        hbox_btns = Gtk.Box()
109
-        vbox.pack_start(hbox_btns, True, True, 0)
110
-        
111
-        # edit btn
112
-        btn_edit = Gtk.Button()
113
-        btn_edit.set_image(Gtk.Image.new_from_icon_name('preferences-other-symbolic', Gtk.IconSize.BUTTON))
114
-        btn_edit.set_tooltip_text(_('Edit'))
115
-        btn_edit.connect('clicked', self.on_edit_format)
116
-        hbox_btns.pack_start(btn_edit, False, True, 0)
117
-        
118
-        self.lbl = Gtk.Label()
119
-        hbox_btns.pack_start(self.lbl, True, False, 0)        
120
-        
121
-        # select btn
122
-        btn_select = Gtk.Button()
123
-        btn_select.set_image(Gtk.Image.new_from_icon_name('object-select-symbolic', Gtk.IconSize.BUTTON))
124
-        btn_select.set_tooltip_text(_('Choose'))
125
-        btn_select.connect('clicked', self.on_select_format)
126
-        hbox_btns.pack_end(btn_select, False, True, 0)
127
- 
128
-        # finally
129
-        vbox.show_all()
130
-        
131
-    def on_entry_search(self, w):
132
-        self.tree_filter.refilter()
133
-    
134
-    def match_func(self, model, tree_iter, data=None):
135
-        txt = self.e_search.get_text()
136
-        value = model.get_value(tree_iter, 0)
137
-        
138
-        if (txt == "") or (txt.lower() in value.lower()):
139
-            return True
140
-        self.tree_formats.set_cursor(0)
141
-        return False
142
-    
143
-    def on_choosed_format(self, tree, path, col):
144
-        model = tree.get_model()
145
-        self.selected_format = model[path][0]
146
-        self.wind.btn_formats.set_label(self.selected_format)
147
-        self.hide()
148
-        self.wind.fill_options()
149
-
150
-
151
curlew-0.2.1.tar.gz/modules/functions.py Deleted
86
 
1
@@ -1,84 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-
22
-import gi
23
-gi.require_version('Gtk', '3.0')
24
-
25
-from gi.repository import Gtk
26
-from subprocess import Popen, PIPE
27
-
28
-def show_message(parent,
29
-                 message,
30
-                 message_type,
31
-                 button_type=Gtk.ButtonsType.CLOSE):
32
-    ''' Show custom message dialog'''
33
-    mess_dlg = Gtk.MessageDialog(parent,
34
-                             Gtk.DialogFlags.MODAL,
35
-                             message_type,
36
-                             button_type)
37
-    mess_dlg.set_markup(message)
38
-    if not parent:
39
-        mess_dlg.set_keep_above(True)
40
-    resp = mess_dlg.run()
41
-    mess_dlg.destroy()
42
-    return resp
43
-
44
-def get_format_size(size):
45
-    ''' formating file size '''
46
-    size_str = ''
47
-    if 0 <= size <= 1024:
48
-        size_str = '{:.2f}'.format(size) + _(' KB')
49
-    elif 1024 <= size < 1024 * 1024:
50
-        e_size = size / 1024.0
51
-        size_str = '{:.2f}'.format(e_size) + _(' MB')
52
-    elif size >= 1024 * 1024:
53
-        e_size = size / 1048576.0
54
-        size_str = '{:.2f}'.format(e_size) + _(' GB')
55
-    return size_str
56
-
57
-
58
-def duration_to_time(duration):
59
-    ''' Convert duration (sec) to time 0:00:00 '''
60
-    if duration < 0: duration = 0
61
-    return '{:.0f}:{:02.0f}:{:02.0f}'.format(
62
-                                             duration/3600,
63
-                                             (duration%3600)/60,
64
-                                             (duration%3600)%60
65
-                                             )
66
-
67
-def time_to_duration(time):
68
-    ''' Convert time like 0:00:00.00 to duration (sec)'''
69
-    times = time.split(':')
70
-    return int(times[0])*3600 + int(times[1])*60 + float(times[2])
71
-
72
-def get_available_codecs(encoder):
73
-    proc = Popen('{} -encoders'.format(encoder), shell=True,
74
-               stdout=PIPE, stderr=PIPE, universal_newlines=True, bufsize=-1)
75
-    codecs = proc.stdout.read()
76
-    return codecs
77
-
78
-def check_codec(encoder, codec):
79
-    new_codec = ' {} '.format(codec)
80
-    codecs = get_available_codecs(encoder)
81
-    if new_codec in codecs:
82
-        return True
83
-    return False
84
-
85
-
86
curlew-0.2.1.tar.gz/modules/infobars.py Deleted
48
 
1
@@ -1,46 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk
25
-
26
-class InfoBar(Gtk.InfoBar):
27
-    def __init__(self):
28
-        Gtk.InfoBar.__init__(self)
29
-        self.set_show_close_button(True)
30
-        self.set_no_show_all(True)
31
-        self.connect('response', self.on_response)
32
-        
33
-        self.lbl_bar = Gtk.Label()
34
-        self.lbl_bar.set_use_markup(True)
35
-        self.lbl_bar.show()
36
-        self.get_content_area().add(self.lbl_bar)
37
-    
38
-    def show_message(self, msg, message_type=Gtk.MessageType.INFO):
39
-        self.lbl_bar.set_label('<b>{}</b>'.format(msg))
40
-        self.set_message_type(message_type)
41
-        self.show()
42
-    
43
-    def on_response(self, info_bar, response_id):
44
-        info_bar.hide()
45
-
46
-
47
-
48
curlew-0.2.1.tar.gz/modules/languages.py Deleted
38
 
1
@@ -1,35 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-
22
-LANGUAGES = {
23
-             'العربية': 'ar',
24
-             'Português - Brazil': 'br',
25
-             'Český': 'cs',
26
-             'English': 'en',
27
-             'Español': 'es',
28
-             'Euskara': 'eu',
29
-             'Français': 'fr',
30
-             'Italiano': 'it',
31
-             'Nederlands': 'nl',
32
-             'Polski': 'pl',
33
-             'Русский': 'ru',
34
-             'Srpski': 'sr',
35
-             'Traditional Chinese: 正體中文': 'zh_TW'
36
-             }
37
\ No newline at end of file
38
curlew-0.2.1.tar.gz/modules/logdialog.py Deleted
69
 
1
@@ -1,66 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-
22
-import gi
23
-gi.require_version('Gtk', '3.0')
24
-
25
-from gi.repository import Gtk, Pango
26
-
27
-class LogDialog(Gtk.Dialog):
28
-    def __init__(self, prnt, log_file):
29
-        self._log_file = log_file
30
-        Gtk.Dialog.__init__(self, parent=prnt)
31
-        self.set_size_request(550, 450)
32
-        self.set_border_width(6)
33
-        self.set_title(_('Errors detail'))
34
-        scroll = Gtk.ScrolledWindow()
35
-        scroll.set_shadow_type(Gtk.ShadowType.IN)
36
-        text_log = Gtk.TextView()
37
-        text_log.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
38
-        text_log.set_border_width(6)
39
-        text_log.set_editable(False)
40
-        text_log.set_cursor_visible(False)
41
-        
42
-        font_desc = Pango.FontDescription('Monospace')
43
-        text_log.override_font(font_desc)
44
-        
45
-        text_buffer = Gtk.TextBuffer()
46
-        text_log.set_buffer(text_buffer)
47
-        
48
-        scroll.add(text_log)
49
-        self.vbox.set_spacing(4)
50
-        self.vbox.pack_start(scroll, True, True, 0)
51
-        
52
-        button = self.add_button(_('_Close'), Gtk.ResponseType.CLOSE)
53
-        self.set_default(button)
54
-        
55
-        with open(log_file, 'r') as log:
56
-            text_buffer.set_text(log.read())
57
-        
58
-        
59
-    def show_dialog(self):
60
-        self.show_all()
61
-        self.run()
62
-        self.destroy()
63
-        
64
-        
65
-        
66
-        
67
-        
68
\ No newline at end of file
69
curlew-0.2.1.tar.gz/modules/tray.py Deleted
94
 
1
@@ -1,92 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-
22
-import gi
23
-gi.require_version('Gtk', '3.0')
24
-
25
-from gi.repository import Gtk
26
-
27
-class StatusIcon(Gtk.StatusIcon):
28
-    def __init__(self, window):
29
-        Gtk.StatusIcon.__init__(self)
30
-        
31
-        self._window = window
32
-        
33
-        self.set_from_icon_name('curlew')
34
-        self.set_tooltip_text(_('Curlew'))
35
-    
36
-        #---- Build menu
37
-        self.menu = Gtk.Menu()
38
-        
39
-        # Show main window
40
-        self.show_item = Gtk.MenuItem(_('Hide'))
41
-        self.show_item.connect("activate", self.show_hide)
42
-        
43
-        # Stop conversion
44
-        stop_item = Gtk.MenuItem(_('Stop Conversion'))
45
-        stop_item.connect("activate", self.stop)
46
-        
47
-        # Quit application
48
-        quit_item = Gtk.MenuItem(_('Quit application'))
49
-        quit_item.connect("activate", self.quit)
50
-        
51
-        # Append menu items and show all
52
-        self.menu.append(self.show_item)
53
-        self.menu.append(stop_item)
54
-        self.menu.append(quit_item)
55
-
56
-        # Make connection
57
-        self.connect('popup-menu', self.on_popup_menu, stop_item)
58
-        self.connect('activate', self.show_hide)
59
-
60
-        self.set_visible(False)
61
-    
62
-    
63
-    def on_popup_menu(self, icon, button, time, stop_item):
64
-        
65
-        # stop_item sensitivity
66
-        stop_item.set_sensitive(self._window.is_converting)
67
-        
68
-        # show/hide
69
-        if self._window.get_visible():
70
-            self.show_item.set_label(_('Hide'))
71
-        else:
72
-            self.show_item.set_label(_('Show'))
73
-        
74
-        self.menu.show_all()
75
-        self.menu.popup(None, None, Gtk.StatusIcon.position_menu, 
76
-                        icon, button, time)
77
-    
78
-    
79
-    def show_hide(self, *agrs):
80
-        if self._window.get_visible():
81
-            self._window.hide()
82
-        else:
83
-            self._window.present()
84
-        
85
-    def stop(self, stop_item):
86
-        if self._window.on_btn_stop_clicked():
87
-            self._window.present()
88
-        
89
-    def quit(self, *args):
90
-        self._window.quit_cb()
91
-
92
-
93
-
94
curlew-0.2.1.tar.gz/modules/waitdialog.py Deleted
65
 
1
@@ -1,63 +0,0 @@
2
-# -*- coding: utf-8 -*-
3
-
4
-# Curlew - Easy to use multimedia converter
5
-#
6
-# Copyright (C) 2012-2016 Fayssal Chamekh <chamfay@gmail.com>
7
-#
8
-# Released under terms on waqf public license.
9
-#
10
-# Curlew is free software; you can redistribute it and/or modify it 
11
-# under the terms of the latest version waqf public license as published by 
12
-# ojuba.org.
13
-#
14
-# Curlew is distributed in the hope that it will be useful, but WITHOUT 
15
-# ANY WARRANTY; without even the implied warranty 
16
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17
-#        
18
-# The latest version of the license can be found on:
19
-# http://www.ojuba.org/wiki/doku.php/waqf/license
20
-
21
-import gi
22
-gi.require_version('Gtk', '3.0')
23
-
24
-from gi.repository import Gtk
25
-
26
-class WaitDialog(Gtk.Dialog):
27
-    def __init__(self, parent):
28
-        
29
-        self.skip = False
30
-        
31
-        Gtk.Dialog.__init__(self, parent=parent)
32
-        self.set_size_request(650, 50)
33
-        self.set_border_width(8)
34
-        self.set_resizable(False)
35
-        self.set_title(_('Adding files...'))
36
-        
37
-        self.text_file = Gtk.Label()
38
-        self.text_file.set_alignment(0, 0.5)
39
-        self.text_file.set_max_width_chars(50)
40
-        self.vbox.pack_start(self.text_file, False, False, 6)
41
-        
42
-        self.prog_bar = Gtk.ProgressBar()
43
-        self.prog_bar.set_show_text(True)
44
-        self.vbox.pack_start(self.prog_bar, False, False, 6)
45
-        
46
-        btn_skip = self.add_button(_('_Cancel'), Gtk.ResponseType.CANCEL)
47
-        btn_skip.connect('clicked', self.__skip)
48
-        
49
-        self.show_all()
50
-        self.connect('delete-event', self.__skip)
51
-    
52
-    
53
-    def set_filename(self, filename):
54
-        self.text_file.set_markup(_('<b>File:</b> ')+filename)
55
-    
56
-    def set_progress(self, value):
57
-        self.prog_bar.set_fraction(value)
58
-        self.prog_bar.set_text('{:.0f}%'.format(value*100))
59
-    
60
-    def __skip(self, *args):
61
-        self.skip = True
62
-
63
-
64
-
65
curlew-0.2.1.tar.gz/stdeb.cfg Deleted
10
 
1
@@ -1,8 +0,0 @@
2
-[DEFAULT]
3
-Source: curlew
4
-Package: curlew
5
-Section: video
6
-Depends3: python3-gi (>> 3.12), python3-dbus, gir1.2-gtk-3.0 (>> 3.12), gnome-icon-theme-symbolic, ffmpeg | libav-tools, xdg-utils, mediainfo
7
-Build-Depends: librsvg2-bin, intltool-debian
8
-XS-Python-Version: >= 3.3
9
-X-Python3-Version: >= 3.3
10
curlew-0.2.1.tar.gz/uninstall.sh Deleted
10
 
1
@@ -1,8 +0,0 @@
2
-#!/bin/bash
3
-
4
-if [ $UID -eq 0 ]; then
5
-   python3 setup.py uninstall
6
-else
7
-   echo "Run me as root!"
8
-fi
9
-
10