mirror of
https://github.com/fergalmoran/picard.git
synced 2026-03-01 19:13:59 +00:00
Add a -V/--long-version command-line option, display Qt version
- keep versions sorted, use OrderedDict - add -V/--long-version command-line option - add Qt version in the list of versions - update About page
This commit is contained in:
@@ -662,12 +662,16 @@ Options:
|
||||
-d, --debug enable debug-level logging
|
||||
-h, --help display this help and exit
|
||||
-v, --version display version information and exit
|
||||
-V, --long-version display long version information and exit
|
||||
""" % (sys.argv[0],)
|
||||
|
||||
|
||||
def version():
|
||||
print "%s %s %s" % (PICARD_ORG_NAME, PICARD_APP_NAME, PICARD_FANCY_VERSION_STR)
|
||||
|
||||
def longversion():
|
||||
print versions.as_string()
|
||||
|
||||
|
||||
def main(localedir=None, autoupdate=True):
|
||||
# Some libs (ie. Phonon) require those to be set
|
||||
@@ -675,13 +679,16 @@ def main(localedir=None, autoupdate=True):
|
||||
QtGui.QApplication.setOrganizationName(PICARD_ORG_NAME)
|
||||
|
||||
signal.signal(signal.SIGINT, signal.SIG_DFL)
|
||||
opts, args = getopt.gnu_getopt(sys.argv[1:], "hvd", ["help", "version", "debug"])
|
||||
opts, args = getopt.gnu_getopt(sys.argv[1:], "hvdV", ["help", "version",
|
||||
"debug", "long-version"])
|
||||
kwargs = {}
|
||||
for opt, arg in opts:
|
||||
if opt in ("-h", "--help"):
|
||||
return help()
|
||||
elif opt in ("-v", "--version"):
|
||||
return version()
|
||||
elif opt in ("-V", "--long-version"):
|
||||
return longversion()
|
||||
elif opt in ("-d", "--debug"):
|
||||
kwargs["debug"] = True
|
||||
tagger = Tagger(args, localedir, autoupdate, **kwargs)
|
||||
|
||||
@@ -57,20 +57,22 @@ class AboutOptionsPage(OptionsPage):
|
||||
else:
|
||||
args["translator-credits"] = ""
|
||||
|
||||
args['third_parties_versions'] = '<br />'.join([u"%s %s" %
|
||||
(versions.version_name(name), value) for name, value
|
||||
in versions.as_dict(i18n=True).items()
|
||||
if name != 'version'])
|
||||
text = _(u"""<p align="center"><span style="font-size:15px;font-weight:bold;">MusicBrainz Picard</span><br/>
|
||||
Version %(version)s</p>
|
||||
<p align="center"><small>
|
||||
PyQt %(pyqt-version)s<br/>
|
||||
Mutagen %(mutagen-version)s<br/>
|
||||
Discid %(discid-version)s
|
||||
%(third_parties_versions)s
|
||||
</small></p>
|
||||
<p align="center"><strong>Supported formats</strong><br/>%(formats)s</p>
|
||||
<p align="center"><strong>Please donate</strong><br/>
|
||||
Thank you for using Picard. Picard relies on the MusicBrainz database, which is operated by the MetaBrainz Foundation with the help of thousands of volunteers. If you like this application please consider donating to the MetaBrainz Foundation to keep the service running.</p>
|
||||
<p align="center"><a href="%(picard-donate-url)s">Donate now!</a></p>
|
||||
<p align="center"><strong>Credits</strong><br/>
|
||||
<small>Copyright © 2004-2014 Robert Kaye, Lukáš Lalinský and others%(translator-credits)s</small></p>
|
||||
<p align="center"><a href="%(picard-doc-url)s">%(picard-doc-url)s</a></p>
|
||||
<small>Copyright © 2004-2015 Robert Kaye, Lukáš Lalinský, Laurent Monin and others%(translator-credits)s</small></p>
|
||||
<p align="center"><strong>Official website</strong><br/><a href="%(picard-doc-url)s">%(picard-doc-url)s</a></p>
|
||||
""") % args
|
||||
self.ui.label.setOpenExternalLinks(True)
|
||||
self.ui.label.setText(text)
|
||||
|
||||
@@ -18,22 +18,25 @@
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
from collections import OrderedDict
|
||||
from mutagen import version_string as mutagen_version
|
||||
from PyQt4.QtCore import PYQT_VERSION_STR as pyqt_version
|
||||
from PyQt4.QtCore import PYQT_VERSION_STR as pyqt_version, QT_VERSION_STR
|
||||
from picard import PICARD_FANCY_VERSION_STR
|
||||
from picard.disc import discid_version
|
||||
|
||||
|
||||
_versions = {
|
||||
"version": PICARD_FANCY_VERSION_STR,
|
||||
"pyqt-version": pyqt_version,
|
||||
"mutagen-version": mutagen_version,
|
||||
"discid-version": discid_version,
|
||||
}
|
||||
_versions = OrderedDict([
|
||||
("version", PICARD_FANCY_VERSION_STR),
|
||||
("pyqt-version", pyqt_version),
|
||||
("qt-version", QT_VERSION_STR),
|
||||
("mutagen-version", mutagen_version),
|
||||
("discid-version", discid_version),
|
||||
])
|
||||
|
||||
_names = {
|
||||
"version": "Picard",
|
||||
"pyqt-version": "PyQt",
|
||||
"qt-version": "Qt",
|
||||
"mutagen-version": "Mutagen",
|
||||
"discid-version": "Discid",
|
||||
}
|
||||
@@ -47,11 +50,17 @@ def _value_as_text(value, i18n=False):
|
||||
return value
|
||||
|
||||
|
||||
def version_name(key):
|
||||
return _names[key]
|
||||
|
||||
|
||||
def as_dict(i18n=False):
|
||||
return dict([(key, _value_as_text(value, i18n)) for key, value in
|
||||
_versions.iteritems()])
|
||||
return OrderedDict([(key, _value_as_text(value, i18n)) for key,
|
||||
value in
|
||||
_versions.items()])
|
||||
|
||||
|
||||
def as_string(i18n=False, separator=", "):
|
||||
values = as_dict(i18n)
|
||||
return separator.join([_names[key] + " " + value for key, value in
|
||||
as_dict(i18n).items()])
|
||||
values.items()])
|
||||
|
||||
Reference in New Issue
Block a user