Mercurial > projects > dil
changeset 460:77c17bbe9d20
Translator: added new modules; applied fixes.
Added a new directory i18n. It contains the translator project file and the
language catalogue files.
The translator main window has a dock widget on the left hand-side now, with
a project tree widget.
author | Aziz K?ksal <aziz.koeksal@gmail.com> |
---|---|
date | Tue, 30 Oct 2007 18:12:01 +0100 |
parents | 1b5f1ce09f38 |
children | c78a54b2617c |
files | trunk/i18n/build.py trunk/i18n/de.cat trunk/i18n/dil.tproj trunk/i18n/en.cat trunk/i18n/fi.cat trunk/i18n/tr.cat trunk/src/translator/errors.py trunk/src/translator/langfile.py trunk/src/translator/make_uis.sh trunk/src/translator/msg_form.ui trunk/src/translator/project.py trunk/src/translator/translator.py trunk/src/translator/translator.ui trunk/src/translator/ui_about.py trunk/src/translator/ui_msg_form.py trunk/src/translator/ui_new_project.py trunk/src/translator/ui_project_properties.py trunk/src/translator/ui_translator.py |
diffstat | 18 files changed, 700 insertions(+), 44 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/build.py Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- +# Author: Aziz Köksal +# License: GPL2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/de.cat Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,87 @@ +Authors: +- [Aziz Köksal, aziz.koeksal@gmail.com] +LangCode: de +License: GPL3 +Messages: +- {Annot: '', ID: 0, LastEd: '', Text: 'illegales Zeichen gefunden: ''{0}'''} +- {Annot: '', ID: 1, LastEd: '', Text: ungültiges Unicodezeichen.} +- {Annot: '', ID: 2, LastEd: '', Text: ungültige UTF-8-Sequenz.} +- {Annot: '', ID: 3, LastEd: '', Text: unterminiertes Zeichenliteral.} +- {Annot: '', ID: 4, LastEd: '', Text: leeres Zeichenliteral.} +- {Annot: '', ID: 5, LastEd: '', Text: erwartete 'line' nach '#'.} +- {Annot: '', ID: 6, LastEd: '', Text: 'Ganzzahl nach #line erwartet.'} +- {Annot: '', ID: 7, LastEd: '', Text: erwartete Dateispezifikation (z.B. "pfad\zur\datei".)} +- {Annot: '', ID: 8, LastEd: '', Text: unterminierte Dateispezifikation (filespec.)} +- {Annot: '', ID: 9, LastEd: '', Text: ein Special Token muss mit einem Zeilenumbruch + abgeschlossen werden.} +- {Annot: '', ID: 10, LastEd: '', Text: unterminiertes Zeichenkettenliteral.} +- {Annot: '', ID: 11, LastEd: '', Text: 'Nicht-Hexzeichen ''{0}'' in Hexzeichenkette + gefunden.'} +- {Annot: '', ID: 12, LastEd: '', Text: ungerade Anzahl von Hexziffern in Hexzeichenkette.} +- {Annot: '', ID: 13, LastEd: '', Text: unterminierte Hexzeichenkette.} +- {Annot: '', ID: 14, LastEd: '', Text: unterminierter Blockkommentar (/* */).} +- {Annot: '', ID: 15, LastEd: '', Text: unterminierter verschachtelter Kommentar (/+ + +/).} +- {Annot: '', ID: 16, LastEd: '', Text: unterminierte rohe Zeichenkette.} +- {Annot: '', ID: 17, LastEd: '', Text: unterminierte Backquote-Zeichenkette.} +- {Annot: '', ID: 18, LastEd: '', Text: 'undefinierte Escapesequenz ''{0}'' gefunden.'} +- {Annot: '', ID: 19, LastEd: '', Text: 'ungültige Unicode-Escapesequenz ''{0}'' gefunden.'} +- {Annot: '', ID: 20, LastEd: '', Text: unzureichende Anzahl von Hexziffern in Escapesequenz.} +- {Annot: '', ID: 21, LastEd: '', Text: 'undefinierte HTML-Entität ''{0}'''} +- {Annot: '', ID: 22, LastEd: '', Text: 'unterminierte HTML-Entität ''{0}''.'} +- {Annot: '', ID: 23, LastEd: '', Text: HTML-Entitäten müssen mit einem Buchstaben + beginnen.} +- {Annot: '', ID: 24, LastEd: '', Text: Dezimalzahl überläuft im Vorzeichenbit.} +- {Annot: '', ID: 25, LastEd: '', Text: Überlauf in Dezimalzahl.} +- {Annot: '', ID: 26, LastEd: '', Text: Überlauf in Hexadezimalzahl.} +- {Annot: '', ID: 27, LastEd: '', Text: Überlauf in Binärzahl.} +- {Annot: '', ID: 28, LastEd: '', Text: Überlauf in Oktalzahl.} +- {Annot: '', ID: 29, LastEd: '', Text: Überlauf in Fließkommazahl.} +- {Annot: '', ID: 30, LastEd: '', Text: die Ziffern 8 und 9 sind in Oktalzahlen unzulässig.} +- {Annot: '', ID: 31, LastEd: '', Text: ungültige Hexzahl; mindestens eine Hexziffer + erforderlich.} +- {Annot: '', ID: 32, LastEd: '', Text: ungültige Binärzahl; mindestens eine Binärziffer + erforderlich.} +- {Annot: '', ID: 33, LastEd: '', Text: der Exponent einer hexadezimalen Fließkommazahl + ist erforderlich.} +- {Annot: '', ID: 34, LastEd: '', Text: Hexadezimal-Exponenten müssen mit einer Dezimalziffer + anfangen.} +- {Annot: '', ID: 35, LastEd: '', Text: Exponenten müssen mit einer Dezimalziffer + anfangen.} +- {Annot: '', ID: 36, LastEd: '', Text: 'erwartete ''{0}'', fand aber ''{1}''.'} +- {Annot: '', ID: 37, LastEd: '', Text: '''{0}'' ist redundant.'} +- {Annot: '', ID: 38, LastEd: '', Text: Template-Tupel-Parameter dürfen nur am Ende + auftreten.} +- {Annot: '', ID: 39, LastEd: '', Text: der 'in'-Vertrag der Funktion wurde bereits + geparsed.} +- {Annot: '', ID: 40, LastEd: '', Text: der 'out'-Vertrag der Funktion wurde bereits + geparsed.} +- {Annot: '', ID: 41, LastEd: '', Text: es wurde kein Verbindungstyp angegeben.} +- {Annot: '', ID: 42, LastEd: '', Text: 'unbekannter Verbindungstyp ''{0}''; gültig + sind C, C++, D, Windows, Pascal und System.'} +- {Annot: '', ID: 43, LastEd: '', Text: 'erwartete eine oder mehrere Basisklassen, + nicht ''{0}''.'} +- {Annot: '', ID: 44, LastEd: '', Text: Basisklassen sind in Vorwärtsdeklarationen + nicht erlaubt.} +- {Annot: '', ID: 45, LastEd: '', Text: 'dil v{0} + + Copyright (c) 2007, Aziz Köksal. Lizensiert unter der GPL3. + + + Befehle: + + {1} + + Geben Sie ''dil help <Befehl>'' ein, um mehr Hilfe zu einem bestimmten Befehl + zu + + erhalten. + + + Kompiliert mit {2} v{3} am {4}.'} +- {Annot: '', ID: 46, LastEd: '', Text: "Generiere ein XML- oder HTML-Dokument aus\ + \ einer D-Quelltextdatei.\nVerwendung:\n dil gen datei.d [Optionen]\n\nOptionen:\n\ + \ --syntax : generiere Elemente für den Syntaxbaum\n --xml \ + \ : verwende XML-Format (voreingestellt)\n --html : verwende HTML-Format\n\ + \nBeispiel:\n dil gen Parser.d --html --syntax > Parser.html"} +- {Annot: '', ID: 47, LastEd: '', Text: ''}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/dil.tproj Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,54 @@ +BuildScript: build.py +CreationDate: '2007-10-12 09:41:17.868084' +LangFiles: [en.cat, de.cat, tr.cat, fi.cat] +MsgIDs: +- {ID: 0, Name: IllegalCharacter, Order: 0} +- {ID: 1, Name: InvalidUnicodeCharacter, Order: 1} +- {ID: 2, Name: InvalidUTF8Sequence, Order: 2} +- {ID: 3, Name: UnterminatedCharacterLiteral, Order: 3} +- {ID: 4, Name: EmptyCharacterLiteral, Order: 4} +- {ID: 5, Name: ExpectedIdentifierSTLine, Order: 5} +- {ID: 6, Name: ExpectedIntegerAfterSTLine, Order: 6} +- {ID: 7, Name: ExpectedFilespec, Order: 7} +- {ID: 8, Name: UnterminatedFilespec, Order: 8} +- {ID: 9, Name: UnterminatedSpecialToken, Order: 9} +- {ID: 10, Name: UnterminatedString, Order: 10} +- {ID: 11, Name: NonHexCharInHexString, Order: 11} +- {ID: 12, Name: OddNumberOfDigitsInHexString, Order: 12} +- {ID: 13, Name: UnterminatedHexString, Order: 13} +- {ID: 14, Name: UnterminatedBlockComment, Order: 14} +- {ID: 15, Name: UnterminatedNestedComment, Order: 15} +- {ID: 16, Name: UnterminatedRawString, Order: 16} +- {ID: 17, Name: UnterminatedBackQuoteString, Order: 17} +- {ID: 18, Name: UndefinedEscapeSequence, Order: 18} +- {ID: 19, Name: InvalidUnicodeEscapeSequence, Order: 19} +- {ID: 20, Name: InsufficientHexDigits, Order: 20} +- {ID: 21, Name: UndefinedHTMLEntity, Order: 21} +- {ID: 22, Name: UnterminatedHTMLEntity, Order: 22} +- {ID: 23, Name: InvalidBeginHTMLEntity, Order: 23} +- {ID: 24, Name: OverflowDecimalSign, Order: 24} +- {ID: 25, Name: OverflowDecimalNumber, Order: 25} +- {ID: 26, Name: OverflowHexNumber, Order: 26} +- {ID: 27, Name: OverflowBinaryNumber, Order: 27} +- {ID: 28, Name: OverflowOctalNumber, Order: 28} +- {ID: 29, Name: OverflowFloatNumber, Order: 29} +- {ID: 30, Name: OctalNumberHasDecimals, Order: 30} +- {ID: 31, Name: NoDigitsInHexNumber, Order: 31} +- {ID: 32, Name: NoDigitsInBinNumber, Order: 32} +- {ID: 33, Name: HexFloatExponentRequired, Order: 33} +- {ID: 34, Name: HexFloatExpMustStartWithDigit, Order: 34} +- {ID: 35, Name: FloatExpMustStartWithDigit, Order: 35} +- {ID: 36, Name: ExpectedButFound, Order: 36} +- {ID: 37, Name: RedundantStorageClass, Order: 37} +- {ID: 38, Name: TemplateTupleParameter, Order: 38} +- {ID: 39, Name: InContract, Order: 39} +- {ID: 40, Name: OutContract, Order: 40} +- {ID: 41, Name: MissingLinkageType, Order: 41} +- {ID: 42, Name: UnrecognizedLinkageType, Order: 42} +- {ID: 43, Name: ExpectedBaseClasses, Order: 43} +- {ID: 44, Name: BaseClassInForwardDeclaration, Order: 44} +- {ID: 45, Name: HelpMain, Order: 45} +- {ID: 46, Name: HelpGenerate, Order: 46} +- {ID: 47, Name: HelpImportGraph, Order: 47} +Name: dil +SourceLangFile: ''
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/en.cat Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,90 @@ +Authors: +- [Aziz Köksal, aziz.koeksal@gmail.com] +LangCode: en +License: GPL3 +Messages: +- {Annot: '', ID: 0, LastEd: '', Text: 'illegal character found: ''{0}'''} +- {Annot: '', ID: 1, LastEd: '', Text: invalid Unicode character.} +- {Annot: '', ID: 2, LastEd: '', Text: invalid UTF-8 sequence.} +- {Annot: '', ID: 3, LastEd: '', Text: unterminated character literal.} +- {Annot: '', ID: 4, LastEd: '', Text: empty character literal.} +- {Annot: '', ID: 5, LastEd: '', Text: expected 'line' after '#'.} +- {Annot: '', ID: 6, LastEd: '', Text: 'integer expected after #line'} +- {Annot: '', ID: 7, LastEd: '', Text: expected filespec string (e.g. "path\to\file".)} +- {Annot: '', ID: 8, LastEd: '', Text: unterminated filespec string.} +- {Annot: '', ID: 9, LastEd: '', Text: expected a terminating newline after special + token.} +- {Annot: '', ID: 10, LastEd: '', Text: unterminated string literal.} +- {Annot: '', ID: 11, LastEd: '', Text: 'non-hex character ''{0}'' found in hex string.'} +- {Annot: '', ID: 12, LastEd: '', Text: odd number of hex digits in hex string.} +- {Annot: '', ID: 13, LastEd: '', Text: unterminated hex string.} +- {Annot: '', ID: 14, LastEd: '', Text: unterminated block comment (/* */).} +- {Annot: '', ID: 15, LastEd: '', Text: unterminated nested comment (/+ +/).} +- {Annot: '', ID: 16, LastEd: '', Text: unterminated raw string.} +- {Annot: '', ID: 17, LastEd: '', Text: unterminated back quote string.} +- {Annot: '', ID: 18, LastEd: '', Text: 'found undefined escape sequence ''{0}''.'} +- {Annot: '', ID: 19, LastEd: '', Text: 'found invalid Unicode escape sequence ''{0}''.'} +- {Annot: '', ID: 20, LastEd: '', Text: insufficient number of hex digits in escape + sequence.} +- {Annot: '', ID: 21, LastEd: '', Text: 'undefined HTML entity ''{0}'''} +- {Annot: '', ID: 22, LastEd: '', Text: 'unterminated HTML entity ''{0}''.'} +- {Annot: '', ID: 23, LastEd: '', Text: HTML entities must begin with a letter.} +- {Annot: '', ID: 24, LastEd: '', Text: decimal number overflows sign bit.} +- {Annot: '', ID: 25, LastEd: '', Text: overflow in decimal number.} +- {Annot: '', ID: 26, LastEd: '', Text: overflow in hexadecimal number.} +- {Annot: '', ID: 27, LastEd: '', Text: overflow in binary number.} +- {Annot: '', ID: 28, LastEd: '', Text: overflow in octal number.} +- {Annot: '', ID: 29, LastEd: '', Text: overflow in float number.} +- {Annot: '', ID: 30, LastEd: '', Text: digits 8 and 9 are not allowed in octal numbers.} +- {Annot: '', ID: 31, LastEd: '', Text: invalid hex number; at least one hex digit + expected.} +- {Annot: '', ID: 32, LastEd: '', Text: invalid binary number; at least one binary + digit expected.} +- {Annot: '', ID: 33, LastEd: '', Text: the exponent of a hexadecimal float number + is required.} +- {Annot: '', ID: 34, LastEd: '', Text: hexadecimal float exponents must start with + a digit.} +- {Annot: '', ID: 35, LastEd: '', Text: exponents must start with a digit.} +- {Annot: '', ID: 36, LastEd: '', Text: 'expected ''{0}'', but found ''{1}''.'} +- {Annot: '', ID: 37, LastEd: '', Text: '''{0}'' is redundant.'} +- {Annot: '', ID: 38, LastEd: '', Text: template tuple parameters can only be last.} +- {Annot: '', ID: 39, LastEd: '', Text: the functions 'in' contract was already parsed.} +- {Annot: '', ID: 40, LastEd: '', Text: the functions 'out' contract was already parsed.} +- {Annot: '', ID: 41, LastEd: '', Text: no linkage type was specified.} +- {Annot: '', ID: 42, LastEd: '', Text: 'unrecognized linkage type ''{0}''; valid + types are C, C++, D, Windows, Pascal und System.'} +- {Annot: '', ID: 43, LastEd: '', Text: 'expected one or more base classes, not ''{0}''.'} +- {Annot: '', ID: 44, LastEd: '', Text: base classes are not allowed in forward declarations.} +- {Annot: '', ID: 45, LastEd: '', Text: 'dil v{0} + + Copyright (c) 2007 by Aziz Köksal. Licensed under the GPL3. + + + Subcommands: + + {1} + + Type ''dil help <subcommand>'' for more help on a particular subcommand. + + + Compiled with {2} v{3} on {4}.'} +- {Annot: '', ID: 46, LastEd: '', Text: "Generate an XML or HTML document from a D\ + \ source file.\nUsage:\n dil gen file.d [Options]\n\nOptions:\n --syntax \ + \ : generate tags for the syntax tree\n --xml : use XML format\ + \ (default)\n --html : use HTML format\n\nExample:\n dil gen Parser.d\ + \ --html --syntax > Parser.html"} +- {Annot: '', ID: 47, LastEd: '', Text: "Parse a module and extract information from\ + \ the resulting module dependency graph.\nUsage:\n dil igraph file.d Format [Options]\n\ + \n The directory of file.d is implicitly added to the list of import paths.\n\ + \nFormat:\n --dot : generate a dot document\n Further options for\ + \ --dot:\n -gbp : Group modules by package names\n -gbf \ + \ : Group modules by full package name\n -hle : highlight cyclic\ + \ edges in the graph\n -hlv : highlight modules in cyclic relationship\n\ + \n --paths : print a list of paths to the modules imported by file.d\n\ + \ --list : print a list of the module names imported by file.d\n Options\ + \ common to --paths and --list:\n -lN : print N levels.\n -m \ + \ : mark modules in cyclic relationships with a star.\n\nOptions:\n\ + \ -Ipath : add 'path' to the list of import paths where modules are\n\ + \ looked for\n -rREGEXP : exclude modules whose names\ + \ match the regular expression\n REGEXP\n -i \ + \ : include unlocatable modules\n\nExample:\n dil igraph src/main.d"}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/fi.cat Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,76 @@ +Authors: +- [Jari-Matti Mäkelä, jmjm@iki.fi] +LangCode: fi +License: GPL3 +Messages: +- {Annot: '', ID: 0, LastEd: '', Text: ''} +- {Annot: '', ID: 1, LastEd: '', Text: virheellinen Unicode-merkki.} +- {Annot: '', ID: 2, LastEd: '', Text: virheellinen UTF-8-merkkijono.} +- {Annot: '', ID: 3, LastEd: '', Text: päättämätön merkkiliteraali.} +- {Annot: '', ID: 4, LastEd: '', Text: tyhjä merkkiliteraali.} +- {Annot: '', ID: 5, LastEd: '', Text: 'odotettiin rivinumeroa ''#'':n jälkeen.'} +- {Annot: '', ID: 6, LastEd: '', Text: 'odotettiin kokonaislukua #line:n jälkeen'} +- {Annot: '', ID: 7, LastEd: '', Text: odotettiin tiedostomäärittelyn merkkijonoa + (esim. "polku\tiedostoon")} +- {Annot: '', ID: 8, LastEd: '', Text: päättämätön tiedostomäärittely.} +- {Annot: '', ID: 9, LastEd: '', Text: odotettiin päättävää rivinvaihtoa erikoismerkin + jälkeen.} +- {Annot: '', ID: 10, LastEd: '', Text: päättämätön merkkijonoliteraali.} +- {Annot: '', ID: 11, LastEd: '', Text: 'ei-heksamerkki ''{0}'' löytyi heksajonossa.'} +- {Annot: '', ID: 12, LastEd: '', Text: pariton määrä heksanumeroita heksajonossa.} +- {Annot: '', ID: 13, LastEd: '', Text: päättämätön heksajono.} +- {Annot: '', ID: 14, LastEd: '', Text: päättämätön lohkokommentti (/* */).} +- {Annot: '', ID: 15, LastEd: '', Text: päättämätön sisäkkäinen kommentti (/+ +/).} +- {Annot: '', ID: 16, LastEd: '', Text: päättämätön raakamerkkijono.} +- {Annot: '', ID: 17, LastEd: '', Text: päättämätön gravisaksenttimerkkijono.} +- {Annot: '', ID: 18, LastEd: '', Text: löydettiin määrittelemätön escape-sekvenssi.} +- {Annot: '', ID: 19, LastEd: '', Text: 'found invalid Unicode escape sequence ''{0}''.'} +- {Annot: '', ID: 20, LastEd: '', Text: riittämätön määrä heksanumeroita escape-sekvenssissä.} +- {Annot: '', ID: 21, LastEd: '', Text: 'määrittelemätön HTML-entiteetti ''{0}'''} +- {Annot: '', ID: 22, LastEd: '', Text: päättämätön HTML-entiteetti.} +- {Annot: '', ID: 23, LastEd: '', Text: HTML-entiteettien tulee alkaa kirjaimella.} +- {Annot: '', ID: 24, LastEd: '', Text: desimaaliluku ylivuotaa etumerkin.} +- {Annot: '', ID: 25, LastEd: '', Text: desimaaliluvun ylivuoto.} +- {Annot: '', ID: 26, LastEd: '', Text: heksadesimaaliluvun ylivuoto.} +- {Annot: '', ID: 27, LastEd: '', Text: binääriluvun ylivuoto.} +- {Annot: '', ID: 28, LastEd: '', Text: oktaaliluvun ylivuoto.} +- {Annot: '', ID: 29, LastEd: '', Text: liukuluvun ylivuoto.} +- {Annot: '', ID: 30, LastEd: '', Text: numerot 8 ja 9 eivät ole sallittuja oktaaliluvuissa.} +- {Annot: '', ID: 31, LastEd: '', Text: virheellinen heksaluku; odotettiin vähintään + yhtä heksanumeroa.} +- {Annot: '', ID: 32, LastEd: '', Text: virheellinen binääriluku; odotettiin vähintään + yhtä binäärinumeroa.} +- {Annot: '', ID: 33, LastEd: '', Text: heksadesimaalisen liukuluvun eksponentti vaaditaan.} +- {Annot: '', ID: 34, LastEd: '', Text: heksadesimaalisen liukuluvun eksponentista + puuttui numeroita.} +- {Annot: '', ID: 35, LastEd: '', Text: eksponenttien tulee alkaa numerolla.} +- {Annot: '', ID: 36, LastEd: '', Text: 'odotettiin ''{0}'':a, mutta löydettiin ''{1}''.'} +- {Annot: '', ID: 37, LastEd: '', Text: '''{0}'' on redundantti.'} +- {Annot: '', ID: 38, LastEd: '', Text: tupla voi esiintyä ainoastaan mallin viimeisenä + parametrina.} +- {Annot: '', ID: 39, LastEd: '', Text: funktion alkuehto jäsennettiin jo.} +- {Annot: '', ID: 40, LastEd: '', Text: funktion loppuehto jäsennettiin jo.} +- {Annot: '', ID: 41, LastEd: '', Text: linkitystyyppiä ei määritelty.} +- {Annot: '', ID: 42, LastEd: '', Text: 'tunnistamaton linkitystyyppi ''{0}''; sallittuja + tyyppejä ovat C, C++, D, Windows, Pascal ja System.'} +- {Annot: '', ID: 43, LastEd: '', Text: 'expected one or more base classes, not ''{0}''.'} +- {Annot: '', ID: 44, LastEd: '', Text: base classes are not allowed in forward declarations.} +- {Annot: '', ID: 45, LastEd: '', Text: 'dil v{0} + + Copyright (c) 2007, Aziz Köksal. GPL3-lisensöity. + + + Alikomennot: + + {1} + + Lisäohjeita tietystä alitoiminnosta saa kirjoittamalla ''dil help <toiminto>''. + + + Käännetty {2}:n versiolla {3} {4}.'} +- {Annot: '', ID: 46, LastEd: '', Text: "Luo XML- tai HTML-dokumentti D-lähdekoodista.\n\ + Käyttö:\n dil gen tiedosto.d [Valinnat]\n\nValinnat:\n --syntax : luo\ + \ elementtejä syntaksipuun mukaisesti\n --xml : käytä XML-muotoa (oletus)\n\ + \ --html : käytä HTML-muotoa\n\nEsimerkki:\n dil gen Parser.d --html\ + \ --syntax > Parser.html"} +- {Annot: '', ID: 47, LastEd: '', Text: ''}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/i18n/tr.cat Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,74 @@ +Authors: +- [Aziz Köksal, aziz.koeksal@gmail.com] +LangCode: tr +License: GPL3 +Messages: +- {Annot: '', ID: 0, LastEd: '', Text: 'illegal karakter bulundu: ''{0}'''} +- {Annot: '', ID: 1, LastEd: '', Text: geçersiz Unikod karakteri.} +- {Annot: '', ID: 2, LastEd: '', Text: geçersiz UTF-8 serisi.} +- {Annot: '', ID: 3, LastEd: '', Text: kapanmamış karakter sabiti.} +- {Annot: '', ID: 4, LastEd: '', Text: boş karakter sabiti.} +- {Annot: '', ID: 5, LastEd: '', Text: '''#'' karakter''den sonra ''line'' beklendi.'} +- {Annot: '', ID: 6, LastEd: '', Text: '''#line''''den sonra rakam beklendi.'} +- {Annot: '', ID: 7, LastEd: '', Text: filespec dizgisi beklendi (e.g. "yol\dosya".)} +- {Annot: '', ID: 8, LastEd: '', Text: kapanmamış filespec dizgisi.} +- {Annot: '', ID: 9, LastEd: '', Text: özel belirtici'den (special token) sonra yeni + bir satır beklendi.} +- {Annot: '', ID: 10, LastEd: '', Text: kapanmamış çift tırnak dizgisi.} +- {Annot: '', ID: 11, LastEd: '', Text: 'heks sayı olmayan karakter ''{0}'' heks dizgisi + içinde bulundu.'} +- {Annot: '', ID: 12, LastEd: '', Text: heks dizginin içindeki sayılar çifter çifter + olmalıdır.} +- {Annot: '', ID: 13, LastEd: '', Text: kapanmamış heks dizgisi.} +- {Annot: '', ID: 14, LastEd: '', Text: kapanmamış blok açıklaması (/* */).} +- {Annot: '', ID: 15, LastEd: '', Text: kapanmamış iç içe koyulabilen açıklaması (/+ + +/).} +- {Annot: '', ID: 16, LastEd: '', Text: kapanmamış çiğ dizgisi.} +- {Annot: '', ID: 17, LastEd: '', Text: kapanmamış ters tırnak dizgisi.} +- {Annot: '', ID: 18, LastEd: '', Text: 'tanımlanmamış çıkış serisi ''{0}'' bulundu.'} +- {Annot: '', ID: 19, LastEd: '', Text: 'geçersiz Unikod çıkış serisi ''{0}'' bulundu.'} +- {Annot: '', ID: 20, LastEd: '', Text: heksadesimal çıkış serisi sayıları yeterli + değil.} +- {Annot: '', ID: 21, LastEd: '', Text: 'tanımlanmamış HTML varlık ''{0}'''} +- {Annot: '', ID: 22, LastEd: '', Text: 'kapanmamış HTML varlık ''{0}''.'} +- {Annot: '', ID: 23, LastEd: '', Text: HTML varlık bir harf ile başlamalı.} +- {Annot: '', ID: 24, LastEd: '', Text: desimal rakamın bit işareti taşdı.} +- {Annot: '', ID: 25, LastEd: '', Text: desimal rakam taşması.} +- {Annot: '', ID: 26, LastEd: '', Text: heksadesimal rakam taşması.} +- {Annot: '', ID: 27, LastEd: '', Text: binari rakam taşması.} +- {Annot: '', ID: 28, LastEd: '', Text: oktal rakam taşması.} +- {Annot: '', ID: 29, LastEd: '', Text: float rakam taşması.} +- {Annot: '', ID: 30, LastEd: '', Text: 8 ve 9 sayılar oktal rakamlar'da geçersizdir.} +- {Annot: '', ID: 31, LastEd: '', Text: geçersiz heks rakam; minimum bir heks sayı + gereklidir.} +- {Annot: '', ID: 32, LastEd: '', Text: geçersiz binari rakam; minimum bir binari + sayı gereklidir.} +- {Annot: '', ID: 33, LastEd: '', Text: bir heksadesimal float rakamın üsü gereklidir.} +- {Annot: '', ID: 34, LastEd: '', Text: heksadesimal float üsler desimal sayı ile + başlamalı.} +- {Annot: '', ID: 35, LastEd: '', Text: üsler desimal sayı ile başlamalı.} +- {Annot: '', ID: 36, LastEd: '', Text: '''{0}'' beklendi, ama ''{1}'' bulundu.'} +- {Annot: '', ID: 37, LastEd: '', Text: '''{0}'' lüzumsuz.'} +- {Annot: '', ID: 38, LastEd: '', Text: şablon tuple parametre son sırada olmalı.} +- {Annot: '', ID: 39, LastEd: '', Text: fonksiyonun 'in' kontratı daha önceden ayrıştırılmış.} +- {Annot: '', ID: 40, LastEd: '', Text: fonksiyonun 'out' kontratı daha önceden ayrıştırılmış.} +- {Annot: '', ID: 41, LastEd: '', Text: bağlantı tüp (linkage type) belirtilmedi.} +- {Annot: '', ID: 42, LastEd: '', Text: 'bilinmeyen bağlantı tüpü (linkage type) ''{0}''; + geçerli olanlar C, C++, D, Windows, Pascal ve System.'} +- {Annot: '', ID: 43, LastEd: '', Text: ''} +- {Annot: '', ID: 44, LastEd: '', Text: ''} +- {Annot: '', ID: 45, LastEd: '', Text: 'dil v{0} + + Copyright (c) 2007, Aziz Köksal. Lisans GPL3. + + + Komutlar: {1} Belirli komut''a yardım edinmek için ''dil help <komut>'' yazınız. + + + Bu yazılım {2} v{3} ile {4} tarihinde derletilmiş.'} +- {Annot: '', ID: 46, LastEd: '', Text: "Bir D kaynak kodundan XML veya HTML dosyası\ + \ oluştur.\nKullanım:\n dil gen dosya.d [Seçenekler]\n\nSeçenekler:\n --syntax\ + \ : söz dizimi için etiketler yazdır\n --xml : XML biçimi\ + \ kullan (varsayılır)\n --html : HTML biçimi kullan\n\nÖrnek:\n dil\ + \ gen Parser.d --html --syntax > Parser.html"} +- {Annot: '', ID: 47, LastEd: '', Text: ''}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/src/translator/errors.py Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,11 @@ +# -*- coding: utf-8 -*- +# Author: Aziz Köksal +# License: GPL2 +import exceptions + +class LoadingError(exceptions.Exception): + def __init__(self, msg): + self.msg = msg + return + def __str__(self): + return self.msg
--- a/trunk/src/translator/langfile.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/langfile.py Tue Oct 30 18:12:01 2007 +0100 @@ -4,6 +4,14 @@ import yaml from errors import LoadingError +def newLangFile(langCode, authors, license): + return { + "LangCode":langCode, + "Authors":authors, + "License":license, + "Messages":[] + } + class LangFile: def __init__(self, filePath): self.filePath = filePath @@ -50,11 +58,3 @@ def save(self): pass - - def newLangFile(langCode, authors, license): - return { - "LangCode":langCode, - "Authors":authors, - "License":license, - "Messages":[] - } \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/src/translator/make_uis.sh Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,6 @@ +#!/bin/bash + +for ui_file in *.ui; do + echo $ui_file \> ui_`basename $ui_file .ui`.py + pyuic4 $ui_file > ui_`basename $ui_file .ui`.py +done \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/src/translator/msg_form.ui Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,101 @@ +<ui version="4.0" > + <class>MsgForm</class> + <widget class="QWidget" name="MsgForm" > + <property name="geometry" > + <rect> + <x>0</x> + <y>0</y> + <width>456</width> + <height>512</height> + </rect> + </property> + <property name="windowTitle" > + <string>Form</string> + </property> + <layout class="QVBoxLayout" > + <item> + <widget class="QSplitter" name="splitter" > + <property name="orientation" > + <enum>Qt::Vertical</enum> + </property> + <widget class="QWidget" name="layoutWidget" > + <layout class="QVBoxLayout" > + <item> + <widget class="QLabel" name="label" > + <property name="text" > + <string>Messages:</string> + </property> + </widget> + </item> + <item> + <widget class="QListWidget" name="listWidget" /> + </item> + </layout> + </widget> + <widget class="QWidget" name="" > + <layout class="QGridLayout" > + <item row="0" column="0" > + <layout class="QVBoxLayout" > + <item> + <widget class="QLabel" name="label_2" > + <property name="text" > + <string>Source string:</string> + </property> + </widget> + </item> + <item> + <widget class="QTextEdit" name="sourceEdit" /> + </item> + </layout> + </item> + <item row="0" column="1" > + <layout class="QVBoxLayout" > + <item> + <widget class="QLabel" name="label_3" > + <property name="text" > + <string>Source annotation:</string> + </property> + </widget> + </item> + <item> + <widget class="QTextEdit" name="sourceAnnotEdit" /> + </item> + </layout> + </item> + <item row="1" column="0" > + <layout class="QVBoxLayout" > + <item> + <widget class="QLabel" name="label_4" > + <property name="text" > + <string>Translation:</string> + </property> + </widget> + </item> + <item> + <widget class="QTextEdit" name="destEdit" /> + </item> + </layout> + </item> + <item row="1" column="1" > + <layout class="QVBoxLayout" > + <item> + <widget class="QLabel" name="label_5" > + <property name="text" > + <string>Translator's annotation:</string> + </property> + </widget> + </item> + <item> + <widget class="QTextEdit" name="destAnnotEdit" /> + </item> + </layout> + </item> + </layout> + </widget> + </widget> + </item> + </layout> + </widget> + <resources/> + <connections/> +</ui>
--- a/trunk/src/translator/project.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/project.py Tue Oct 30 18:12:01 2007 +0100 @@ -7,6 +7,16 @@ import datetime import yaml +def newProjectData(projectName): + return { + "Name":projectName, + "LangFiles":[], + "SourceLangFile":'', + "MsgIDs":[], + "CreationDate":str(datetime.datetime.utcnow()), + "BuildScript":'' + } + class Project: # Members: # name @@ -27,6 +37,7 @@ self.langFilePaths = list(doc["LangFiles"]) self.msgIDs = list(doc["MsgIDs"]) self.creationDate = str(doc["CreationDate"]) + self.buildScript = str(doc["BuildScript"]) except KeyError, e: raise LoadingError("Missing member '%s' in '%s'" % (e.message, projectPath)) @@ -49,6 +60,7 @@ self.langFiles = [] for filePath in self.langFilePaths: if not os.path.exists(filePath): + # Look in project directory. projectDir = os.path.dirname(projectPath) filePath2 = os.path.join(projectDir, filePath) if not os.path.exists(filePath2): @@ -62,13 +74,3 @@ def save(self): pass - - def newProjectData(projectName): - return { - "Name":projectName, - "LangFiles":[], - "SourceLangFile":'', - "MsgIDs":[], - "CreationDate":str(datetime.datetime.utcnow()) - } -
--- a/trunk/src/translator/translator.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/translator.py Tue Oct 30 18:12:01 2007 +0100 @@ -11,12 +11,14 @@ from ui_about import Ui_AboutDialog from ui_new_project import Ui_NewProjectDialog from ui_project_properties import Ui_ProjectProperties +from ui_msg_form import Ui_MsgForm -from project import Project +from project import Project, newProjectData g_scriptDir = sys.path[0] g_CWD = os.getcwd() g_projectExt = ".tproj" +g_catExt = ".cat" g_settingsFile = os.path.join(g_scriptDir, "settings.yaml") g_settings = {} @@ -28,12 +30,19 @@ self.project = None # Modifications self.disableMenuItems() + self.projectDock = QtGui.QDockWidget("Project", self) + self.projectTree = ProjectTree(self) + self.projectDock.setWidget(self.projectTree) + self.addDockWidget(QtCore.Qt.LeftDockWidgetArea, self.projectDock) # Custom connections QtCore.QObject.connect(self.action_About, QtCore.SIGNAL("triggered()"), self.showAboutDialog) QtCore.QObject.connect(self.action_New_Project, QtCore.SIGNAL("triggered()"), self.createNewProject) QtCore.QObject.connect(self.action_Open_Project, QtCore.SIGNAL("triggered()"), self.openProjectAction) QtCore.QObject.connect(self.action_Close_Project, QtCore.SIGNAL("triggered()"), self.closeProject) QtCore.QObject.connect(self.action_Properties, QtCore.SIGNAL("triggered()"), self.showProjectProperties) + QtCore.QObject.connect(self.action_Add_Catalogue, QtCore.SIGNAL("triggered()"), self.addCatalogue) + QtCore.QObject.connect(self.action_Add_New_Catalogue, QtCore.SIGNAL("triggered()"), self.addNewCatalogue) + QtCore.QObject.connect(self.projectTree, QtCore.SIGNAL("currentItemChanged (QTreeWidgetItem *,QTreeWidgetItem *)"), self.projectTreeItemChanged) self.readSettings() @@ -48,14 +57,20 @@ dialog.exec_() def createNewProject(self): - NewProjectDialog().exec_() + if self.cantCloseProjectIfOpen(): + return + dialog = NewProjectDialog() + code = dialog.exec_() + if code == QtGui.QDialog.Accepted: + self.openProject(str(dialog.projectFilePath.text())) def openProjectAction(self): - if self.closeProjectIfOpen(): + if self.cantCloseProjectIfOpen(): return filePath = QtGui.QFileDialog.getOpenFileName(self, "Select Project File", g_CWD, "Translator Project (*%s)" % g_projectExt); + filePath = str(filePath) if filePath: - self.openProject(str(filePath)) + self.openProject(filePath) def openProject(self, filePath): from errors import LoadingError @@ -65,11 +80,16 @@ QtGui.QMessageBox.critical(self, "Error", u"Couldn't load project file:\n\n"+str(e)) return self.enableMenuItems() - self.projectTree = ProjectTree(self) self.projectTree.setProject(self.project) - self.vboxlayout.addWidget(self.projectTree) + + def addCatalogue(self): + filePath = QtGui.QFileDialog.getOpenFileName(self, "Select Project File", g_CWD, "Catalogue (*%s)" % g_catExt); + filePath = str(filePath) - def closeProjectIfOpen(self): + def addNewCatalogue(self): + pass + + def cantCloseProjectIfOpen(self): if self.project == None: return False return self.closeProject() @@ -85,8 +105,7 @@ del self.project self.project = None self.disableMenuItems() - self.vboxlayout.removeWidget(self.projectTree) - self.projectTree.close() + self.projectTree.clear() return True def enableMenuItems(self): @@ -97,6 +116,13 @@ self.action_Close_Project.setEnabled(False) self.menubar.removeAction(self.menu_Project.menuAction()) + def projectTreeItemChanged(self, item, column): + if item == None: + return + # TODO: set centralwidget to the form corresponding to the item. + if isinstance(item, LangFileItem): + print "LangFileItem" + def closeEvent(self, event): if self.closeProject() == False: event.ignore() @@ -139,6 +165,11 @@ } yaml.dump(g_settings, open(g_settingsFile, "w")) #default_flow_style=False +class MsgForm(QtGui.QWidget, Ui_MsgForm): + def __init__(self): + QtGui.QWidget.__init__(self) + self.setupUi(self) + class MsgIDItem(QtGui.QTreeWidgetItem): def __init__(self, parent, text): QtGui.QTreeWidgetItem.__init__(self, parent, [text]) @@ -152,22 +183,28 @@ QtGui.QTreeWidget.__init__(self, parent) self.topItem = None self.msgIDsItem = None + self.headerItem().setHidden(True) def setProject(self, project): - self.project = project + self.project = project - self.topItem = QtGui.QTreeWidgetItem([self.project.name]) - self.addTopLevelItem(self.topItem) + self.topItem = QtGui.QTreeWidgetItem([self.project.name]) + self.addTopLevelItem(self.topItem) + + for langFile in self.project.langFiles: + langFileItem = LangFileItem(self.topItem, langFile.langCode) - self.msgIDsItem = QtGui.QTreeWidgetItem(self.topItem, ["Message IDs"]) - for msgID in self.project.msgIDs: - MsgIDItem(self.msgIDsItem, msgID["Name"]) + self.msgIDsItem = QtGui.QTreeWidgetItem(self.topItem, ["Message IDs"]) + for msgID in self.project.msgIDs: + MsgIDItem(self.msgIDsItem, msgID["Name"]) - for langFile in self.project.langFiles: - langFileItem = LangFileItem(self.topItem, langFile.langCode) + for x in [self.topItem, self.msgIDsItem]: + x.setExpanded(True) - for x in [self.topItem, self.msgIDsItem]: - x.setExpanded(True) + def clear(self): + self.topItem = None + self.msgIDsItem = None + QtGui.QTreeWidget.clear(self) class NewProjectDialog(QtGui.QDialog, Ui_NewProjectDialog): def __init__(self): @@ -196,7 +233,7 @@ QtGui.QMessageBox.warning(self, "Warning", "Please, choose or enter a path for the project file.") return - projectData = Project.newProjectData(projectName) + projectData = newProjectData(projectName) if os.path.splitext(filePath)[1] != g_projectExt: filePath += g_projectExt
--- a/trunk/src/translator/translator.ui Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/translator.ui Tue Oct 30 18:12:01 2007 +0100 @@ -45,6 +45,7 @@ <string>&Project</string> </property> <addaction name="action_Add_Catalogue" /> + <addaction name="action_Add_New_Catalogue" /> <addaction name="action_Build_Project" /> <addaction name="separator" /> <addaction name="action_Properties" /> @@ -77,7 +78,7 @@ </action> <action name="action_Add_Catalogue" > <property name="text" > - <string>&Add catalogue</string> + <string>&Add catalogue...</string> </property> </action> <action name="action_Properties" > @@ -106,6 +107,11 @@ <string>Ctrl+W</string> </property> </action> + <action name="action_Add_New_Catalogue" > + <property name="text" > + <string>Add new catalogue...</string> + </property> + </action> </widget> <resources/> <connections>
--- a/trunk/src/translator/ui_about.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/ui_about.py Tue Oct 30 18:12:01 2007 +0100 @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'about.ui' # -# Created: Thu Oct 11 13:54:26 2007 +# Created: Sun Oct 21 17:33:29 2007 # by: PyQt4 UI code generator 4.1 # # WARNING! All changes made in this file will be lost!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/trunk/src/translator/ui_msg_form.py Tue Oct 30 18:12:01 2007 +0100 @@ -0,0 +1,104 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'msg_form.ui' +# +# Created: Sun Oct 21 17:33:29 2007 +# by: PyQt4 UI code generator 4.1 +# +# WARNING! All changes made in this file will be lost! + +import sys +from PyQt4 import QtCore, QtGui + +class Ui_MsgForm(object): + def setupUi(self, MsgForm): + MsgForm.setObjectName("MsgForm") + MsgForm.resize(QtCore.QSize(QtCore.QRect(0,0,456,512).size()).expandedTo(MsgForm.minimumSizeHint())) + + self.vboxlayout = QtGui.QVBoxLayout(MsgForm) + self.vboxlayout.setObjectName("vboxlayout") + + self.splitter = QtGui.QSplitter(MsgForm) + self.splitter.setOrientation(QtCore.Qt.Vertical) + self.splitter.setObjectName("splitter") + + self.layoutWidget = QtGui.QWidget(self.splitter) + self.layoutWidget.setObjectName("layoutWidget") + + self.vboxlayout1 = QtGui.QVBoxLayout(self.layoutWidget) + self.vboxlayout1.setObjectName("vboxlayout1") + + self.label = QtGui.QLabel(self.layoutWidget) + self.label.setObjectName("label") + self.vboxlayout1.addWidget(self.label) + + self.listWidget = QtGui.QListWidget(self.layoutWidget) + self.listWidget.setObjectName("listWidget") + self.vboxlayout1.addWidget(self.listWidget) + + self.widget = QtGui.QWidget(self.splitter) + self.widget.setObjectName("widget") + + self.gridlayout = QtGui.QGridLayout(self.widget) + self.gridlayout.setObjectName("gridlayout") + + self.vboxlayout2 = QtGui.QVBoxLayout() + self.vboxlayout2.setObjectName("vboxlayout2") + + self.label_2 = QtGui.QLabel(self.widget) + self.label_2.setObjectName("label_2") + self.vboxlayout2.addWidget(self.label_2) + + self.sourceEdit = QtGui.QTextEdit(self.widget) + self.sourceEdit.setObjectName("sourceEdit") + self.vboxlayout2.addWidget(self.sourceEdit) + self.gridlayout.addLayout(self.vboxlayout2,0,0,1,1) + + self.vboxlayout3 = QtGui.QVBoxLayout() + self.vboxlayout3.setObjectName("vboxlayout3") + + self.label_3 = QtGui.QLabel(self.widget) + self.label_3.setObjectName("label_3") + self.vboxlayout3.addWidget(self.label_3) + + self.sourceAnnotEdit = QtGui.QTextEdit(self.widget) + self.sourceAnnotEdit.setObjectName("sourceAnnotEdit") + self.vboxlayout3.addWidget(self.sourceAnnotEdit) + self.gridlayout.addLayout(self.vboxlayout3,0,1,1,1) + + self.vboxlayout4 = QtGui.QVBoxLayout() + self.vboxlayout4.setObjectName("vboxlayout4") + + self.label_4 = QtGui.QLabel(self.widget) + self.label_4.setObjectName("label_4") + self.vboxlayout4.addWidget(self.label_4) + + self.destEdit = QtGui.QTextEdit(self.widget) + self.destEdit.setObjectName("destEdit") + self.vboxlayout4.addWidget(self.destEdit) + self.gridlayout.addLayout(self.vboxlayout4,1,0,1,1) + + self.vboxlayout5 = QtGui.QVBoxLayout() + self.vboxlayout5.setObjectName("vboxlayout5") + + self.label_5 = QtGui.QLabel(self.widget) + self.label_5.setObjectName("label_5") + self.vboxlayout5.addWidget(self.label_5) + + self.destAnnotEdit = QtGui.QTextEdit(self.widget) + self.destAnnotEdit.setObjectName("destAnnotEdit") + self.vboxlayout5.addWidget(self.destAnnotEdit) + self.gridlayout.addLayout(self.vboxlayout5,1,1,1,1) + self.vboxlayout.addWidget(self.splitter) + + self.retranslateUi(MsgForm) + QtCore.QMetaObject.connectSlotsByName(MsgForm) + + def retranslateUi(self, MsgForm): + MsgForm.setWindowTitle(QtGui.QApplication.translate("MsgForm", "Form", None, QtGui.QApplication.UnicodeUTF8)) + self.label.setText(QtGui.QApplication.translate("MsgForm", "Messages:", None, QtGui.QApplication.UnicodeUTF8)) + self.label_2.setText(QtGui.QApplication.translate("MsgForm", "Source string:", None, QtGui.QApplication.UnicodeUTF8)) + self.label_3.setText(QtGui.QApplication.translate("MsgForm", "Source annotation:", None, QtGui.QApplication.UnicodeUTF8)) + self.label_4.setText(QtGui.QApplication.translate("MsgForm", "Translation:", None, QtGui.QApplication.UnicodeUTF8)) + self.label_5.setText(QtGui.QApplication.translate("MsgForm", "Translator\'s annotation:", None, QtGui.QApplication.UnicodeUTF8)) +
--- a/trunk/src/translator/ui_new_project.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/ui_new_project.py Tue Oct 30 18:12:01 2007 +0100 @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'new_project.ui' # -# Created: Thu Oct 11 21:16:07 2007 +# Created: Sun Oct 21 17:33:29 2007 # by: PyQt4 UI code generator 4.1 # # WARNING! All changes made in this file will be lost!
--- a/trunk/src/translator/ui_project_properties.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/ui_project_properties.py Tue Oct 30 18:12:01 2007 +0100 @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'project_properties.ui' # -# Created: Tue Oct 16 21:58:58 2007 +# Created: Sun Oct 21 17:33:29 2007 # by: PyQt4 UI code generator 4.1 # # WARNING! All changes made in this file will be lost!
--- a/trunk/src/translator/ui_translator.py Tue Oct 30 16:58:17 2007 +0200 +++ b/trunk/src/translator/ui_translator.py Tue Oct 30 18:12:01 2007 +0100 @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'translator.ui' # -# Created: Sun Oct 14 13:11:43 2007 +# Created: Sun Oct 21 17:33:29 2007 # by: PyQt4 UI code generator 4.1 # # WARNING! All changes made in this file will be lost! @@ -63,6 +63,9 @@ self.action_Close_Project = QtGui.QAction(MainWindow) self.action_Close_Project.setObjectName("action_Close_Project") + + self.action_Add_New_Catalogue = QtGui.QAction(MainWindow) + self.action_Add_New_Catalogue.setObjectName("action_Add_New_Catalogue") self.menu_File.addAction(self.action_Open_Project) self.menu_File.addAction(self.action_New_Project) self.menu_File.addAction(self.action_Close_Project) @@ -70,6 +73,7 @@ self.menu_File.addAction(self.action_Quit) self.menu_Help.addAction(self.action_About) self.menu_Project.addAction(self.action_Add_Catalogue) + self.menu_Project.addAction(self.action_Add_New_Catalogue) self.menu_Project.addAction(self.action_Build_Project) self.menu_Project.addSeparator() self.menu_Project.addAction(self.action_Properties) @@ -91,11 +95,12 @@ self.action_About.setText(QtGui.QApplication.translate("MainWindow", "&About", None, QtGui.QApplication.UnicodeUTF8)) self.action_New_Project.setText(QtGui.QApplication.translate("MainWindow", "&New Project...", None, QtGui.QApplication.UnicodeUTF8)) self.action_New_Project.setShortcut(QtGui.QApplication.translate("MainWindow", "Ctrl+N", None, QtGui.QApplication.UnicodeUTF8)) - self.action_Add_Catalogue.setText(QtGui.QApplication.translate("MainWindow", "&Add catalogue", None, QtGui.QApplication.UnicodeUTF8)) + self.action_Add_Catalogue.setText(QtGui.QApplication.translate("MainWindow", "&Add catalogue...", None, QtGui.QApplication.UnicodeUTF8)) self.action_Properties.setText(QtGui.QApplication.translate("MainWindow", "&Properties", None, QtGui.QApplication.UnicodeUTF8)) self.action_Build_Project.setText(QtGui.QApplication.translate("MainWindow", "&Build Project", None, QtGui.QApplication.UnicodeUTF8)) self.action_Open_Project.setText(QtGui.QApplication.translate("MainWindow", "&Open Project...", None, QtGui.QApplication.UnicodeUTF8)) self.action_Open_Project.setShortcut(QtGui.QApplication.translate("MainWindow", "Ctrl+O", None, QtGui.QApplication.UnicodeUTF8)) self.action_Close_Project.setText(QtGui.QApplication.translate("MainWindow", "&Close Project", None, QtGui.QApplication.UnicodeUTF8)) self.action_Close_Project.setShortcut(QtGui.QApplication.translate("MainWindow", "Ctrl+W", None, QtGui.QApplication.UnicodeUTF8)) + self.action_Add_New_Catalogue.setText(QtGui.QApplication.translate("MainWindow", "Add new catalogue...", None, QtGui.QApplication.UnicodeUTF8))