If you use one or two word substitution "
+"each time you search a phrase with less than the specified number of words, the "
+"search engine will also search for all phrases that differ from the original "
+"one in one or two words."
+"\n"
+"Example:"
+"
\n"
+"If you search for My name is Andrea and you have activated "
+"one word substitution you may also find phrases like "
+"My name is Joe or Your name is Andrea."
+msgstr ""
+"Jos käytät yhden tai kahden sanan korvausta "
+"joka kerta etsittäessä lauseista, jossa on vähemmän kuin annettu määrä sanoja, "
+"hakukone etsii lauseita, jotka poikkeavat alkuperäisestä yhden tai kahden sanan "
+"verran."
+"\n"
+"Esimerkki:"
+"
\n"
+"Jos etsitään Nimeni on Andrea ja käytössä on"
+"yhden sanan korvaus löydetään myös Nimeni on Joe tai "
+"Nimesi on Andrea."
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 402
+#: rc.cpp:935 rc.cpp:1140
+#, no-c-format
+msgid "Use one word substitution"
+msgstr "Käytä yhden sanan korvausta"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 433
+#: rc.cpp:938 rc.cpp:944 rc.cpp:1143 rc.cpp:1149
+#, no-c-format
+msgid "Max number of words in the query:"
+msgstr "Suurin kyselyn sanojen lukumäärä:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 458
+#: rc.cpp:941 rc.cpp:1146
+#, no-c-format
+msgid "Use two word substitution"
+msgstr "Käytä kahden sanan korvausta"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 491
+#: rc.cpp:947 rc.cpp:1152
+#, no-c-format
+msgid "[A-Za-z0-9_%"
+msgstr "[A-Za-z0-9_%"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 509
+#: rc.cpp:950 rc.cpp:1155
+#, no-c-format
+msgid "]"
+msgstr "]"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 519
+#: rc.cpp:953 rc.cpp:1158
+#, no-c-format
+msgid "Local characters for regular expressions:"
+msgstr "Säännöllisten lausekkeiden paikalliset merkit:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 573
+#: rc.cpp:959 rc.cpp:1164
+#, no-c-format
+msgid "Database folder:"
+msgstr "Tietokantakansio:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 589
+#: rc.cpp:962 rc.cpp:1167
+#, no-c-format
+msgid "Auto add entry to database"
+msgstr "Lisää tietue automaattisesti tietokantaan"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 595
+#: rc.cpp:965 rc.cpp:1170
+#, no-c-format
+msgid ""
+"Automatically add an entry to the database if a new translation is notified by "
+"someone (may be kbabel)"
+msgstr ""
+"Lisää automaattisesti tietue tietokantaan, jos joku ilmoittaa uudesta "
+"käännöksestä (saattaa olla kbabel)"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 617
+#: rc.cpp:968 rc.cpp:1173
+#, no-c-format
+msgid "Auto added entry author:"
+msgstr "Automaattisesti lisätyn tietueen tekijä:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 625
+#: rc.cpp:971 rc.cpp:1176
+#, no-c-format
+msgid ""
+"Put here the name and email address that you want to use as "
+"last translator filed when you auto-add entry to the database (e.g. when "
+"you modify a translation with kbabel)."
+""
+msgstr ""
+"Laita tähän nimi ja sähköpostiosoite, joita haluat käyttää "
+"viimeisimpänä kääntäjänä lisättäessä automaattisesti tietueita "
+"tietokantaan (esim. kun muutat käännöstä kbabelilla)."
+""
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 635
+#: rc.cpp:974
+#, no-c-format
+msgid "Scan Single PO File"
+msgstr "Etsi yhdestä PO-tiedostosta"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 643
+#: rc.cpp:977
+#, no-c-format
+msgid "Scan Folder"
+msgstr "Etsi kansiosta"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 651
+#: rc.cpp:980
+#, no-c-format
+msgid "Scan Folder && Subfolders"
+msgstr "Etsi kansiosta ja alikansioista"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 673
+#: rc.cpp:983 rc.cpp:1188
+#, no-c-format
+msgid "Scanning file:"
+msgstr "Etsitään tiedostosta:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 681
+#: rc.cpp:986 rc.cpp:1191
+#, no-c-format
+msgid "Entries added:"
+msgstr "Lisätyt tietueet:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 722
+#: rc.cpp:989 rc.cpp:1194
+#, no-c-format
+msgid "Total progress:"
+msgstr "Kokonaisedistyminen:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 730
+#: rc.cpp:992 rc.cpp:1197
+#, no-c-format
+msgid "Processing file:"
+msgstr "Käsitellään tiedostoa:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 766
+#: rc.cpp:995 rc.cpp:1200
+#, no-c-format
+msgid "Loading file:"
+msgstr "Ladataan tiedostoa:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 779
+#: rc.cpp:998 rc.cpp:1203
+#, no-c-format
+msgid "Export..."
+msgstr "Vie..."
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 798
+#: rc.cpp:1004 rc.cpp:1209
+#, no-c-format
+msgid "Repeated Strings"
+msgstr "Toistetut merkkijonot"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 808
+#: rc.cpp:1007 rc.cpp:1212
+#, no-c-format
+msgid "Good Keys"
+msgstr "Hyvät avaimet"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 832
+#: rc.cpp:1013 rc.cpp:1218
+#, no-c-format
+msgid ""
+"Here you can define how to fill the good keys list."
+"\n"
+"You can set the minimum number of words of the query that a key must have to be "
+"inserted in the good keys list."
+"
\n"
+"You can also set the minimum number of words of the key that the query must "
+"have to insert the key in the list."
+"
\n"
+"These two numbers are the percentage of the total number of words. If the "
+"result of this percentage is less than one, the engine will set it to one."
+"
\n"
+"Finally you can set the maximum number of entries in the list."
+msgstr ""
+"Tässä voidaan määritellä, kuinka hyvien avainten luettelo "
+"täytetään."
+"\n"
+"Voit asettaa kyselyn sanojen vähimmäismäärän, jotka avaimessa pitää olla, jotta "
+"avain lisättäisiin hyvien avainten luetteloon."
+"
\n"
+"Voit asettaa myös avaimen sanojen vähimmäismäärän, jotka kyselyssä pitää olla, "
+"jotta avain lisättäisiin hyvien avainten luetteloon."
+"
\n"
+"Nämä kaksi lukua ovat prosenttiosuuksia sanojen kokonaislukumäärästä. Mikäli "
+"tämä prosenttiosuus on pienempi kuin yksi, hakukone asettaa sen yhdkesi."
+"
\n"
+"Lopuksi voit asettaa luettelon suurimman tietuemäärän."
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 849
+#: rc.cpp:1020 rc.cpp:1225
+#, no-c-format
+msgid "Minimum number of words of the key also in the query (%):"
+msgstr "Avaimen sanojen vähimmäismäärä, jotka on oltava kyselyssä (%):"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 874
+#: rc.cpp:1023 rc.cpp:1029 rc.cpp:1228 rc.cpp:1234
+#, no-c-format
+msgid "%"
+msgstr "%"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 888
+#: rc.cpp:1026 rc.cpp:1231
+#, no-c-format
+msgid "Minimum number of query words in the key (%):"
+msgstr "Kyselyn sanojen vähimmäismäärä, jotka on oltava avaimessa (%):"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 921
+#: rc.cpp:1032 rc.cpp:1237
+#, no-c-format
+msgid "Max list length:"
+msgstr "Luettelon suurin koko:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 945
+#: rc.cpp:1035 rc.cpp:1240
+#, no-c-format
+msgid "Frequent Words"
+msgstr "Yleiset sanat"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 962
+#: rc.cpp:1038 rc.cpp:1243
+#, no-c-format
+msgid "Discard words more frequent than:"
+msgstr "Älä huomioi sanoja, jotka esiintyvät useammin kuin:"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 970
+#: rc.cpp:1041 rc.cpp:1246
+#, no-c-format
+msgid "/10000"
+msgstr "/10000"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine2/dbseprefwidget.ui line 987
+#: rc.cpp:1044 rc.cpp:1249
+#, no-c-format
+msgid "Frequent words are considered as in every key"
+msgstr "Yleisten sanojen tulkitaan esiintyvän jokaisessa avaimessa"
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine/dbseprefwidget.ui line 632
+#: rc.cpp:1179
+#, no-c-format
+msgid "Scan Single PO File..."
+msgstr "Etsi yhdestä PO-tiedostosta..."
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine/dbseprefwidget.ui line 640
+#: rc.cpp:1182
+#, no-c-format
+msgid "Scan Folder..."
+msgstr "Etsi kansiosta..."
+
+#. i18n: file ./kbabeldict/modules/dbsearchengine/dbseprefwidget.ui line 648
+#: rc.cpp:1185
+#, no-c-format
+msgid "Scan Folder && Subfolders..."
+msgstr "Etsi kansiosta ja alikansioista..."
+
+#. i18n: file ./kbabeldict/modules/poauxiliary/pwidget.ui line 39
+#: rc.cpp:1252
+#, no-c-format
+msgid "&Path to auxiliary file:"
+msgstr "Polku &lisätiedostoon:"
+
+#. i18n: file ./kbabeldict/modules/poauxiliary/pwidget.ui line 61
+#: rc.cpp:1255
+#, no-c-format
+msgid "&Ignore fuzzy entries"
+msgstr "Ä&lä huomio sumeita tietueita"
+
+#. i18n: file ./kbabeldict/modules/poauxiliary/pwidget.ui line 78
+#: rc.cpp:1258
+#, no-c-format
+msgid ""
+""
+"\n"
+"The following variables will be replaced in the path if available:\n"
+"
\n"
+"- @PACKAGE@: the name of the currently translated application or "
+"package
\n"
+"- @LANG@: the language code
\n"
+"- @DIRn@: where n is a positive integer. This expands to the "
+"nth folder counted from the filename
\n"
+"
"
+msgstr ""
+""
+"\n"
+"Seuraavat muuttujat korvataan polussa, mikäli olemassa:\n"
+"
\n"
+"- @PACKAGE@: käännettävän sovelluksen tai paketin nimi
\n"
+"- @LANG@: kielikoodi
\n"
+"- @DIRn@: missä n on positiivinen kokonaisluku. Tämä "
+"korvataan n:nnellä kansiolla tiedostonimestä laskettuna
\n"
+"
"
+
+#: kbabeldict/kbabeldictbox.cpp:201
+msgid "Total:"
+msgstr "Yhteensä:"
+
+#: kbabeldict/kbabeldictbox.cpp:216
+msgid "Found in:"
+msgstr "Löytyi:"
+
+#: kbabeldict/kbabeldictbox.cpp:224
+msgid "Translator:"
+msgstr "Kääntäjä:"
+
+#: kbabeldict/kbabeldictbox.cpp:236
+msgid "Date:"
+msgstr "Päivämäärä:"
+
+#: kbabeldict/kbabeldictbox.cpp:244
+msgid "&More"
+msgstr "&Lisää"
+
+#: kbabeldict/kbabeldictbox.cpp:287
+msgid "Score"
+msgstr "Pisteet"
+
+#: kbabeldict/kbabeldictbox.cpp:288
+msgid "Original"
+msgstr "Alkuperäinen"
+
+#: kbabeldict/kbabeldictbox.cpp:289
+msgid "Translation"
+msgstr "Käännös"
+
+#: kbabeldict/kbabeldictbox.cpp:290
+msgid "Location"
+msgstr "Sijainti"
+
+#: kbabeldict/kbabeldictbox.cpp:313
+msgid "< &Previous"
+msgstr "< &Edellinen"
+
+#: kbabeldict/kbabeldictbox.cpp:318
+msgid "&Next >"
+msgstr "&Seuraava >"
+
+#: kbabeldict/kbabeldictbox.cpp:957 kbabeldict/kbabeldictbox.cpp:1015
+#: kbabeldict/kbabeldictbox.cpp:1027 kbabeldict/kbabeldictbox.cpp:1128
+#: kbabeldict/kbabeldictbox.cpp:1190 kbabeldict/kbabeldictbox.cpp:1449
+msgid "Edit File"
+msgstr "Muokkaa tiedostoa"
+
+#: kbabeldict/kbabeldictbox.cpp:1010 kbabeldict/kbabeldictbox.cpp:1185
+#, c-format
+msgid "Edit File %1"
+msgstr "Muokkaa tiedostoa %1"
+
+#: kbabeldict/kbabeldictbox.cpp:1257
+#, c-format
+msgid "Send bugs to %1"
+msgstr "Lähetä virheraportit osoitteeseen %1"
+
+#: kbabeldict/kbabeldictbox.cpp:1270
+msgid "Authors:"
+msgstr "Tekijät:"
+
+#: kbabeldict/kbabeldictbox.cpp:1286
+msgid "Thanks to:"
+msgstr "Kiitokset:"
+
+#: kbabeldict/kbabeldictbox.cpp:1302
+msgid "No information available."
+msgstr "Ei tietoja saatavilla."
+
+#: kbabeldict/kbabeldictbox.cpp:1505
+#, c-format
+msgid "Configure Dictionary %1"
+msgstr "Sanakirjan %1 asetukset"
+
+#: kbabeldict/kbabeldictbox.cpp:1698
+#, c-format
+msgid ""
+"There was an error starting KBabel:\n"
+"%1"
+msgstr ""
+"Tapahtui virhe käynnistettäessä KBabelia:\n"
+"%1"
+
+#: kbabeldict/kbabeldictbox.cpp:1712
+msgid "There was an error using DCOP."
+msgstr "Tapahtui virhe käytettäessä DCOP-viestintää."
+
+#: kbabeldict/kbabeldictbox.cpp:1738
+msgid ""
+"The \"Translation Database\" module\n"
+"appears not to be installed on your system."
+msgstr ""
+"\"Translation Database\" -moduuli\n"
+"näyttää puuttuvan järjestelmästä."
+
+#: kbabeldict/main.cpp:114
+msgid "KBabel - Dictionary"
+msgstr "KBabel - Sanakirja"
+
+#: kbabeldict/main.cpp:115
+msgid "A dictionary for translators"
+msgstr "Sanakirja kääntäjille"
+
+#: kbabeldict/main.cpp:116
+msgid "(c) 2000,2001,2002,2003 The KBabeldict developers"
+msgstr "(c) 2000,2001,2002,2003 KBabeldict-kehittäjät"
+
+#: kbabeldict/modules/tmx/pc_factory.cpp:95
+#: kbabeldict/modules/tmx/tmxcompendium.cpp:175
+msgid "TMX Compendium"
+msgstr "TMX-kokoomatiedosto"
+
+#: kbabeldict/modules/tmx/pc_factory.cpp:97
+msgid "A module for searching in a TMX file"
+msgstr "TMX-tiedostojen etsintämoduuli"
+
+#: kbabeldict/modules/tmx/preferenceswidget.cpp:88
+msgid ""
+""
+"Parameters
"
+"Here you can fine-tune searching within the PO file. For example, if you "
+"want to perform a case sensitive search.
"
+msgstr ""
+""
+"Parametrit
"
+"Tässä voit hienosäätää etsintää PO-tiedostosta. Voit esimerkiksi suorittaa "
+"kirjainkoosta riippumattoman haun.
"
+
+#: kbabeldict/modules/pocompendium/preferenceswidget.cpp:96
+#: kbabeldict/modules/tmx/preferenceswidget.cpp:94
+msgid ""
+""
+"Comparison Options
"
+"Choose here which messages you want to have treated as a matching "
+"message.
"
+msgstr ""
+""
+"Vertailuasetukset
"
+"Valitse tässä, mitkä viestit haluat käsitellä täsmäävinä viesteinä.
"
+
+#: kbabeldict/modules/pocompendium/preferenceswidget.cpp:104
+#: kbabeldict/modules/tmx/preferenceswidget.cpp:102
+msgid ""
+""
+"3-Gram-matching
"
+"A message matches another if most of its 3-letter groups are contained in "
+"the other message. e.g. 'abc123' matches 'abcx123c12'.
"
+msgstr ""
+""
+"3-Gram-vertailu
"
+"Viesti vastaa toista viestiä, jos useimmat sen kolmen kirjaimen ryhmistä "
+"sisältyvät toiseen viestiin. Esimerkiksi 'abc123' vastaa 'abcx123c12'.
"
+
+#: kbabeldict/modules/pocompendium/preferenceswidget.cpp:109
+#: kbabeldict/modules/tmx/preferenceswidget.cpp:107
+msgid ""
+""
+"Location
"
+"Configure here which file is to be used for searching.
"
+msgstr ""
+""
+"Sijainti
"
+"Aseta tässä, missä etsittävä tiedosto on.
"
+
+#: kbabeldict/modules/pocompendium/compendiumdata.cpp:79
+#: kbabeldict/modules/pocompendium/pocompendium.cpp:1195
+#: kbabeldict/modules/tmx/tmxcompendium.cpp:957
+msgid "Loading PO compendium"
+msgstr "Ladataan PO-kokoomatiedostoa"
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:80
+msgid "Loading TMX compendium"
+msgstr "Ladataan TMX-kokoomatiedostoa"
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:92
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:102
+msgid "Cannot open the file."
+msgstr "Ei voitu avata tiedostoa."
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:96
+msgid "Cannot parse XML data."
+msgstr "Ei voitu koostaa XML-tietoa."
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:111
+msgid "Unsupported format."
+msgstr "Tukematon muoto."
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:117
+msgid ""
+"Error while trying to read file for TMX Compendium module:\n"
+"%1\n"
+"Reason: %2"
+msgstr ""
+"Virhe luettaessa TMX-kokoomamoduulin tiedostoa:\n"
+"%1\n"
+"Syy: %2"
+
+#: kbabeldict/modules/pocompendium/compendiumdata.cpp:104
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:132
+msgid "Building indices"
+msgstr "Rakennetaan hakemistoja"
+
+#: kbabeldict/modules/tmx/tmxcompendiumdata.cpp:229
+msgid "Empty database."
+msgstr "Tyhjä tietokanta."
+
+#: kbabeldict/modules/pocompendium/pc_factory.cpp:95
+#: kbabeldict/modules/pocompendium/pocompendium.cpp:184
+msgid "PO Compendium"
+msgstr "PO-kokoomatiedosto"
+
+#: kbabeldict/modules/pocompendium/pc_factory.cpp:97
+msgid "A module for searching in a PO file"
+msgstr "PO-tiedostojen etsintämoduuli"
+
+#: kbabeldict/modules/pocompendium/preferenceswidget.cpp:88
+msgid ""
+""
+"Parameters
"
+"Here you can fine-tune searching within the PO file. For example if you want "
+"to perform a case sensitive search, or if you want fuzzy messages to be "
+"ignored.
"
+msgstr ""
+""
+"Parametrit
"
+"Tässä voidaan hienosäätää etsintää PO-tiedostosta. Voidaan esimerkiksi "
+"suorittaa kirjainkoosta riippumattoman haku, tai jättää sumeat viestit "
+"huomiotta.
"
+
+#: kbabeldict/modules/pocompendium/compendiumdata.cpp:93
+#, c-format
+msgid ""
+"Error while trying to read file for PO Compendium module:\n"
+"%1"
+msgstr ""
+"Virhe luettaessa PO-kokoomamoduulin tiedostoa:\n"
+"%1"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1412
+#: kbabeldict/modules/dbsearchengine/dbse_factory.cpp:67
+#: kbabeldict/modules/dbsearchengine2/dbse2_factory.cpp:68
+msgid "Translation Database"
+msgstr "Käännöstietokanta"
+
+#: kbabeldict/modules/dbsearchengine/dbse_factory.cpp:69
+#: kbabeldict/modules/dbsearchengine2/dbse2_factory.cpp:70
+msgid "A fast translation search engine based on databases"
+msgstr "Nopea tietokantoihin pohjautuva hakukone"
+
+#: kbabeldict/modules/dbsearchengine2/dbse2_factory.cpp:72
+msgid "Copyright 2000-2003 by Andrea Rizzi"
+msgstr "Copyright 2000-2003 Andrea Rizzi"
+
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:182
+msgid "CHUNK BY CHUNK"
+msgstr "Pala palalta"
+
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:183
+msgid ""
+"Chunk by chunk
CHANGE THIS TEXT!!!!This translation isobtained "
+"translating the sentences and using afuzzy sentence translation database."
+"
Do not rely on it. Translations may be fuzzy."
+"
"
+msgstr ""
+"Pala palalta
Tämä käännös saadaan kääntämällä lauseita ja käyttämällä "
+"sumeata lausekäännöstietokantaa."
+"
Älä luota käännökseen. Käännökset saattavat olla sumeita."
+"
"
+
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:374
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:386
+msgid "DYNAMIC DICT:"
+msgstr "Dynaaminen kirjasto:"
+
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:375
+#: kbabeldict/modules/dbsearchengine2/algorithms.cpp:387
+msgid ""
+"Dynamic Dictionary
This is a dynamic dictionary created looking for "
+"correlation of original and translated words."
+"
Do not rely on it. Translations may be fuzzy."
+"
"
+msgstr ""
+"Dynamiinen kirjasto
Tämä on dynaaminen kirjasto, joka on luotu "
+"vertaamalla alkuperäisiä ja käännettyjä sanoja."
+"
Älä luota käännökseen. Käännökset saattaavat olla sumeita."
+"
"
+
+#: kbabeldict/modules/dbsearchengine2/database.cpp:142
+msgid "Create Database"
+msgstr "Luo tietokanta"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:258
+#: kbabeldict/modules/dbsearchengine2/database.cpp:142
+msgid "Create"
+msgstr "Luo"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:127
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:258
+#: kbabeldict/modules/dbsearchengine2/database.cpp:142
+msgid "Do Not Create"
+msgstr "Älä luo"
+
+#: kbabeldict/modules/dbsearchengine2/KDBSearchEngine2.cpp:562
+#: kbabeldict/modules/dbsearchengine2/KDBSearchEngine2.cpp:614
+msgid ""
+"The name you chose is already used.\n"
+"Please change the source name."
+msgstr ""
+"Valittu nimi on jo käytössä.\n"
+"Vaihda lähteen nimeä."
+
+#: kbabeldict/modules/dbsearchengine2/KDBSearchEngine2.cpp:563
+#: kbabeldict/modules/dbsearchengine2/KDBSearchEngine2.cpp:615
+msgid "Name is Not Unique"
+msgstr "Nimi ei ole yksilöivä"
+
+#: kbabeldict/modules/dbsearchengine/preferenceswidget.cpp:102
+#, c-format
+msgid "Scanning file: %1"
+msgstr "Etsitään tiedostosta: %1"
+
+#: kbabeldict/modules/dbsearchengine/preferenceswidget.cpp:107
+#, c-format
+msgid "Entries added: %1"
+msgstr "Tietueita lisättiin: %1"
+
+#: kbabeldict/modules/dbsearchengine/dbse_factory.cpp:71
+msgid "Copyright 2000-2001 by Andrea Rizzi"
+msgstr "Copyright 2000-2001 Andrea Rizzi"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:84
+msgid "No error"
+msgstr "Ei virheitä"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:125
+msgid ""
+"Database folder does not exist:\n"
+"%1\n"
+"Do you want to create it now?"
+msgstr ""
+"Tietokantakansiota ei ole olemassa:\n"
+"%1\n"
+"Luodaanko se nyt?"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:127
+msgid "Create Folder"
+msgstr "Luo kansio"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:146
+#, c-format
+msgid "It was not possible to create folder %1"
+msgstr "Kansiota %1 ei voitu luoda"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:176
+msgid ""
+"There are backup database files from previous versions of KBabel. However, "
+"another version of KBabel (probably from KDE 3.1.1 or 3.1.2) created a new "
+"database. As a result, your KBabel installation contains two versions of "
+"database files. Unfortunatelly, the old and new version can not be merged. You "
+"need to choose one of them."
+"
"
+"
If you choose the old version, the new one will be removed. If you choose "
+"the new version, the old database files will be left alone and you need to "
+"remove them manually. Otherwise this message will be displayed again (the old "
+"files are at $KDEHOME/share/apps/kbabeldict/dbsearchengine/*,old).
"
+msgstr ""
+"Löytyi edellisen KBabel-versioiden varmistustietokantoja. Toinen KBabelin "
+"versio (todennäköisesti KDE 3.1.1 or 3.1.2) loi uuden tietokannan. Asennus ei "
+"voi sisältää kahdenlaisia tietokantoja. Valitettavasti tietokantoja ei voi "
+"yhdistää. Toinen niistä on valittava."
+"
"
+"
Jos valitaan vanha versio, uusi tietokanta poistetaan. Jos valitaan uusi, "
+"vanhat tietokantatiedostot jätetään ennalleen ja ne tulee poistaa käsin. Muussa "
+"tapauksessa tämä viesti näytetään uudelleen (vanhat tiedostot ovat kansiossa "
+"$KDEHOME/share/apps/kbabeldict/dbsearchengine/*,old).
"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:185
+msgid "Old Database Found"
+msgstr "Vanha tietokanta löytyi"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:186
+msgid "Use &Old Database"
+msgstr "Käytä &vanhaa tietokantaa"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:187
+msgid "Use &New Database"
+msgstr "Käytä &uutta tietokantaa"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:258
+msgid ""
+"Database files not found.\n"
+"Do you want to create them now?"
+msgstr ""
+"Tietokantatiedostoja ei löytynyt.\n"
+"Luodaanko ne nyt?"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:408
+msgid "Cannot open the database"
+msgstr "Ei voida avata tietokantaa"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:431
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:640
+msgid "Another search has already been started"
+msgstr "Toinen haku on jo käynnistetty"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:438
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:647
+msgid "Unable to search now: a PO file scan is in progress"
+msgstr "Nyt ei voida etsiä: PO-tiedoston etsintä on käynnissä"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:445
+msgid "Unable to open the database"
+msgstr "Ei voitu avata tietokantaa"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:451
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:658
+msgid "Database empty"
+msgstr "Tyhjä tietokanta"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:462
+msgid "No entry for this package in the database."
+msgstr "Tällä paketilla ei ole merkintää tietokannassa."
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:469
+msgid "Searching for %1 in database"
+msgstr "Etsitään %1 tietokannasta"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:548
+msgid "Looking for repetitions"
+msgstr "Etsitään toistoja"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:562
+msgid "Minimum Repetition"
+msgstr "Pienin toisto"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:564
+msgid "Insert the minimum number of repetitions for a string:"
+msgstr "Lisää merkkijonon toistojen vähimmäismäärä:"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:572
+msgid "Searching repeated string"
+msgstr "Etsitään toistettua merkkijonoa"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1240
+msgid "Select Folder to Scan Recursively"
+msgstr "Valitse kansio, josta etsitään rekursiivisesti"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1263
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1315
+#, c-format
+msgid "Scanning folder %1"
+msgstr "Etsitään kansiosta %1"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1299
+msgid "Select Folder to Scan"
+msgstr "Valitse kansio, josta etsiään"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1358
+msgid "Select PO File to Scan"
+msgstr "Valitse PO-tiedosto, josta etsitään"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1372
+#, c-format
+msgid "Scanning file %1"
+msgstr "Etsitään tiedostosta %1"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1608
+msgid "Searching words"
+msgstr "Etsitään sanoja"
+
+#: kbabeldict/modules/dbsearchengine/KDBSearchEngine.cpp:1850
+msgid "Process output"
+msgstr "Prosessin tuloste"
+
+#: kbabeldict/modules/poauxiliary/pa_factory.cpp:95
+#: kbabeldict/modules/poauxiliary/poauxiliary.cpp:147
+msgid "PO Auxiliary"
+msgstr "PO-lisätiedosto"
+
+#: kbabeldict/modules/poauxiliary/poauxiliary.cpp:426
+msgid "Loading PO auxiliary"
+msgstr "Lataan PO-lisätiedostoa"
+
+#: kbabeldict/modules/poauxiliary/poauxiliary.cpp:438
+#, c-format
+msgid ""
+"Error while trying to open file for PO Auxiliary module:\n"
+"%1"
+msgstr ""
+"Virhe avattaessa PO-lisämoduulin tiedostoa:\n"
+"%1"
+
+#: kbabeldict/modules/poauxiliary/poauxiliary.cpp:450
+msgid "Building index"
+msgstr "Rakennetaan hakemistoa"
+
+#: kbabeldict/modules/poauxiliary/pa_factory.cpp:97
+msgid "A simple module for exact searching in a PO file"
+msgstr "PO-tiedostojen yksinkertainen tarkan haun moduuli"
+
+#: kbabeldict/kbabeldictview.cpp:83
+msgid "Search in module:"
+msgstr "Etsi moduulista:"
+
+#: kbabeldict/kbabeldictview.cpp:106
+msgid "&Start Search"
+msgstr "&Aloita haku"
+
+#: kbabeldict/kbabeldictview.cpp:108
+msgid "Sea&rch in translations"
+msgstr "&Etsi käännöksistä"
+
+#: kbabeldict/kbabeldictview.cpp:125
+msgid "Settings:"
+msgstr "Asetukset:"
+
+#: kbabeldict/aboutmoduledlg.cpp:42
+msgid "Report Bug..."
+msgstr "Ilmoita virhe..."
+
+#: kbabeldict/kbabeldict.cpp:45
+msgid "KBabelDict"
+msgstr "KBabelDict"
+
+#: kbabeldict/kbabeldict.cpp:47
+msgid "About Module"
+msgstr "Tietoja moduulista"
+
+#: kbabeldict/kbabeldict.cpp:48 kbabeldict/kbabeldict.cpp:104
+msgid "Hide Sett&ings"
+msgstr "Piilota as&etukset"
+
+#: kbabeldict/kbabeldict.cpp:108
+msgid "Show Sett&ings"
+msgstr "Näytä &asetukset"
+
+#: kbabeldict/dictchooser.cpp:59
+msgid ""
+"_: dictionary to not use\n"
+"Do not use:"
+msgstr "Älä käytä:"
+
+#: kbabeldict/dictchooser.cpp:62
+msgid ""
+"_: dictionary to use\n"
+"Use:"
+msgstr "Käytä:"
+
+#: kbabeldict/dictchooser.cpp:84
+msgid "Move &Up"
+msgstr "Siirrä y&löspäin"
+
+#: kbabeldict/dictchooser.cpp:87
+msgid "Move &Down"
+msgstr "Siirrä al&aspäin"
+
+#: kbabeldict/dictchooser.cpp:90
+msgid "Con&figure..."
+msgstr "&Asetukset..."
diff --git a/tde-i18n-fi/messages/tdesdk/kbugbuster.po b/tde-i18n-fi/messages/tdesdk/kbugbuster.po
new file mode 100644
index 00000000000..9e991af5f9f
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kbugbuster.po
@@ -0,0 +1,954 @@
+# translation of kbugbuster.po to finnish
+# Copyright (C) 2003, 2006 Free Software Foundation, Inc.
+#
+# Teemu Rytilahti , 2003.
+# Maria Peltokangas, Mari Saarinen , 2006.
+# Ilpo Kantonen , 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: kbugbuster\n"
+"POT-Creation-Date: 2008-07-08 01:21+0200\n"
+"PO-Revision-Date: 2006-09-15 11:50+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Teemu Rytilahti,Maria Peltokangas,Mari Saarinen"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "teemu.rytilahti@d5k.net,trithduras@msn.com,mapisa@utu.fi"
+
+#: gui/cwloadingwidget.cpp:158 main.cpp:32 main.cpp:47
+msgid "KBugBuster"
+msgstr "KBugBuster"
+
+#: main.cpp:38
+msgid "Start in disconnected mode"
+msgstr "Käynnistä yhdistämättömässä tilassa"
+
+#: main.cpp:40
+msgid "Start with the buglist for "
+msgstr ":n virhelista käynnistettäessä"
+
+#: main.cpp:41
+msgid "Start with bug report
"
+msgstr "Vikailmoitus käynnistettäessä
"
+
+#: main.cpp:49
+msgid "(c) 2001,2002,2003 the KBugBuster authors"
+msgstr "(c) 2001,2002,2003 KBugBusterin tekijät"
+
+#. i18n: file kresources/kresources_kcal_bugzilla.kcfg line 10
+#: rc.cpp:3
+#, no-c-format
+msgid "Server"
+msgstr "Palvelin"
+
+#. i18n: file kresources/kresources_kcal_bugzilla.kcfg line 13
+#: rc.cpp:6
+#, no-c-format
+msgid "Product"
+msgstr "Tuote"
+
+#. i18n: file kresources/kresources_kcal_bugzilla.kcfg line 16
+#: rc.cpp:9
+#, no-c-format
+msgid "Component"
+msgstr "Komponentti"
+
+#. i18n: file gui/kbugbusterui.rc line 27
+#: rc.cpp:18
+#, no-c-format
+msgid "S&earch"
+msgstr "&Etsi"
+
+#. i18n: file gui/kbugbusterui.rc line 33
+#: rc.cpp:21
+#, no-c-format
+msgid "&Commands"
+msgstr "&Komennot"
+
+#. i18n: file gui/kbugbusterui.rc line 53
+#: rc.cpp:27
+#, no-c-format
+msgid "Search Toolbar"
+msgstr "Hakutyökalurivi"
+
+#. i18n: file gui/kbugbusterui.rc line 59
+#: rc.cpp:30
+#, no-c-format
+msgid "Command Toolbar"
+msgstr "Komentotyökalurivi"
+
+#. i18n: file gui/kbugbusterui.rc line 73
+#: rc.cpp:33
+#, no-c-format
+msgid "Settings Toolbar"
+msgstr "Asetustyökalurivi"
+
+#. i18n: file gui/centralwidget_base.ui line 30
+#: rc.cpp:36 rc.cpp:78
+#, no-c-format
+msgid "Search"
+msgstr "Etsi"
+
+#. i18n: file gui/centralwidget_base.ui line 82
+#: rc.cpp:39 rc.cpp:84
+#, no-c-format
+msgid "Bug &number:"
+msgstr "Vi&an numero:"
+
+#. i18n: file gui/centralwidget_base.ui line 141
+#: rc.cpp:42 rc.cpp:87
+#, no-c-format
+msgid "&Description:"
+msgstr "Kuvau&s:"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 71
+#: gui/cwbugdetailscontainer.cpp:200 rc.cpp:45
+#, no-c-format
+msgid "Bug Title"
+msgstr "Vian otsikko"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 79
+#: rc.cpp:48
+#, no-c-format
+msgid "Bug Commands"
+msgstr "Vikakomennot"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 103
+#: rc.cpp:51
+#, no-c-format
+msgid "Clear Co&mmands"
+msgstr "Tyhjennä ko&mennot"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 125
+#: gui/kbbmainwindow.cpp:184 rc.cpp:54
+#, no-c-format
+msgid "C&lose..."
+msgstr "Sul&je..."
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 136
+#: rc.cpp:57
+#, no-c-format
+msgid "Close Silentl&y"
+msgstr "Sulje lähettämättä &ilmoitusta"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 147
+#: gui/kbbmainwindow.cpp:188 rc.cpp:60
+#, no-c-format
+msgid "Re&open"
+msgstr "Avaa uu&destaan"
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 158
+#: rc.cpp:63
+#, no-c-format
+msgid "Re&assign..."
+msgstr "Osoit&a..."
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 169
+#: rc.cpp:66
+#, no-c-format
+msgid "Change &Title..."
+msgstr "Vaihda &otsikkoa..."
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 180
+#: rc.cpp:69
+#, no-c-format
+msgid "Chan&ge Severity..."
+msgstr "V&aihda vakavuutta..."
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 202
+#: gui/kbbmainwindow.cpp:196 rc.cpp:72
+#, no-c-format
+msgid "&Reply..."
+msgstr "&Vastaa..."
+
+#. i18n: file gui/cwbugdetailscontainer_base.ui line 213
+#: gui/kbbmainwindow.cpp:198 rc.cpp:75
+#, no-c-format
+msgid "Reply &Privately..."
+msgstr "Vastaa &yksityisesti..."
+
+#. i18n: file gui/cwsearchwidget_base.ui line 38
+#: rc.cpp:81
+#, no-c-format
+msgid "&Package:"
+msgstr "&Paketti:"
+
+#: backend/bug.cpp:44
+msgid "Critical"
+msgstr "Kriittinen"
+
+#: backend/bug.cpp:45
+msgid "Grave"
+msgstr "Vakava"
+
+#: backend/bug.cpp:46
+msgid "Major"
+msgstr "Merkittävä"
+
+#: backend/bug.cpp:47
+msgid "Crash"
+msgstr "Kaatuminen"
+
+#: backend/bug.cpp:48
+msgid "Normal"
+msgstr "Normaali"
+
+#: backend/bug.cpp:49
+msgid "Minor"
+msgstr "Pieni"
+
+#: backend/bug.cpp:50
+msgid "Wishlist"
+msgstr "Toivelista"
+
+#: backend/bug.cpp:52 backend/bug.cpp:108
+msgid "Undefined"
+msgstr "Määrittelemätön"
+
+#: backend/bug.cpp:102
+msgid "Unconfirmed"
+msgstr "Vahvistamaton"
+
+#: backend/bug.cpp:103
+msgid "New"
+msgstr "Uusi"
+
+#: backend/bug.cpp:104
+msgid "Assigned"
+msgstr "Osoitettu"
+
+#: backend/bug.cpp:105
+msgid "Reopened"
+msgstr "Uudelleenavattu"
+
+#: backend/bug.cpp:106
+msgid "Closed"
+msgstr "Suljettu"
+
+#: backend/bugcommand.cpp:9 backend/person.cpp:21 gui/buglvi.cpp:44
+msgid "Unknown"
+msgstr "Tuntematon"
+
+#: backend/bugcommand.cpp:107
+msgid "Close Silently"
+msgstr "Sulje lähettämättä ilmoitusta"
+
+#: backend/bugcommand.cpp:124
+msgid "Reopen"
+msgstr "Avaa uudestaan"
+
+#: backend/bugcommand.cpp:141
+msgid "Retitle"
+msgstr "Otsikoi uudestaan"
+
+#: backend/bugcommand.cpp:163
+msgid "Merge"
+msgstr "Yhdistä"
+
+#: backend/bugcommand.cpp:185
+msgid "Unmerge"
+msgstr "Peruuta yhdistäminen"
+
+#: backend/bugcommand.cpp:218 backend/bugcommand.cpp:222
+msgid "Reply"
+msgstr "Vastaa"
+
+#: backend/bugcommand.cpp:224
+msgid "Reply (Maintonly)"
+msgstr "Vastaa (vain ylläpitäjälle)"
+
+#: backend/bugcommand.cpp:226
+msgid "Reply (Quiet)"
+msgstr "Vastaa (lähettämättä ilmoitusta)"
+
+#: backend/bugcommand.cpp:259
+msgid "Private Reply"
+msgstr "Yksityisvastaus"
+
+#: backend/bugcommand.cpp:284 gui/cwbuglistcontainer.cpp:72
+#: gui/severityselectdialog.cpp:16
+msgid "Severity"
+msgstr "Vakavuus"
+
+#: backend/bugcommand.cpp:306
+msgid "Reassign"
+msgstr "Osoita uudelleen"
+
+#: backend/bugdetails.cpp:244
+msgid ""
+"Attachment %1 could not be decoded.\n"
+"Encoding: %2"
+msgstr ""
+"Liitettä %1 ei voitu purkaa.\n"
+"Koodaus: %2"
+
+#: backend/bugdetailsjob.cpp:39
+msgid "Bug %1: %2"
+msgstr "Vika %1: %2"
+
+#: backend/bugjob.cpp:56
+msgid "Parsing..."
+msgstr "Luetaan..."
+
+#: backend/bugjob.cpp:67
+msgid "Ready."
+msgstr "Valmis."
+
+#: backend/buglistjob.cpp:63
+msgid "Package %1: %2"
+msgstr "Paketti %1: %2"
+
+#: backend/bugmybugsjob.cpp:70
+#, c-format
+msgid "My Bugs: %2"
+msgstr "Omat viat: %2"
+
+#: backend/bugmybugsjob.cpp:72 backend/bugsystem.cpp:145
+msgid "My Bugs"
+msgstr "Omat viat"
+
+#: backend/bugserver.cpp:289
+msgid "Mail generated by KBugBuster"
+msgstr "KBugBusterin luoma viesti"
+
+#: backend/bugserver.cpp:321
+#, c-format
+msgid "Control command: %1"
+msgstr "Ohjauskomento: %1"
+
+#: backend/bugserver.cpp:323
+#, c-format
+msgid "Mail to %1"
+msgstr "Lähetä kohteeseen %1"
+
+#: backend/bugsystem.cpp:151
+msgid "Retrieving My Bugs list..."
+msgstr "Haetaan omaa vikalistaa..."
+
+#: backend/kbbprefs.cpp:137
+msgid "Bug Fixed in CVS"
+msgstr "Vika korjattu CVS-versiossa"
+
+#: backend/kbbprefs.cpp:140
+msgid "Duplicate Report"
+msgstr "Toistuneen vian raportti"
+
+#: backend/kbbprefs.cpp:143
+msgid "Packaging Bug"
+msgstr "Paketointivika"
+
+#: backend/kbbprefs.cpp:149
+msgid "Feature Implemented in CVS"
+msgstr "Ominaisuus toteutettu CVS-versiossa"
+
+#: backend/kbbprefs.cpp:152
+msgid "More Information Required"
+msgstr "Lisää tietoja tarvitaan"
+
+#: backend/kbbprefs.cpp:157
+msgid "No Longer Applicable"
+msgstr "Ei enää soveltuva"
+
+#: backend/kbbprefs.cpp:162
+msgid "Won't Fix Bug"
+msgstr "Ei-korjattava vika"
+
+#: backend/kbbprefs.cpp:165
+msgid "Cannot Reproduce Bug"
+msgstr "Vikaa ei voida toisintaa"
+
+#: backend/mailsender.cpp:97
+msgid "Sending through sendmail..."
+msgstr "Lähetetään Sendmaililla..."
+
+#: backend/mailsender.cpp:105
+msgid "No running instance of KMail found."
+msgstr "Ei löydetty käynnissä olevaa KMail-prosessia."
+
+#: backend/mailsender.cpp:110
+msgid "Passing mail to KDE email program..."
+msgstr "Siirretään viestiä KDE-sähköpostiohjelmaan..."
+
+#: backend/mailsender.cpp:174
+msgid ""
+"Error during SMTP transfer.\n"
+"command: %1\n"
+"response: %2"
+msgstr ""
+"Virhe SMTP-siirron aikana.\n"
+"komento: %1\n"
+"vastaus: %2"
+
+#: backend/smtp.cpp:40
+#, c-format
+msgid "Connecting to %1"
+msgstr "Yhdistetään palvelimeen %1"
+
+#: backend/smtp.cpp:82
+#, c-format
+msgid "Connected to %1"
+msgstr "Yhdistetty palvelimeen %1"
+
+#: backend/smtp.cpp:90
+msgid "Connection refused."
+msgstr "Yhteys torjuttu."
+
+#: backend/smtp.cpp:93
+msgid "Host Not Found."
+msgstr "Palvelinta ei löytynyt."
+
+#: backend/smtp.cpp:96
+msgid "Error reading socket."
+msgstr "Virhe luettaessa pistoketta."
+
+#: backend/smtp.cpp:99
+msgid "Internal error, unrecognized error."
+msgstr "Sisäinen virhe, tunnistamaton virhe."
+
+#: backend/smtp.cpp:156
+msgid "Message sent"
+msgstr "Viesti lähetetty"
+
+#: gui/buglvi.cpp:32
+#, c-format
+msgid ""
+"_n: 1 day\n"
+"%n days"
+msgstr ""
+"1 päivä\n"
+"%n päivää"
+
+#: gui/buglvi.cpp:48
+msgid "%1 (%2)"
+msgstr "%1 (%2)"
+
+#: gui/centralwidget.cpp:358
+msgid "Found the following attachments. Save?"
+msgstr "Seuraavat liitteet löydettiin. Tallennetaanko?"
+
+#: gui/centralwidget.cpp:362
+msgid "Select Folder Where to Save Attachments"
+msgstr "Valitse kansio jonne liitteet tallennetaan"
+
+#: gui/centralwidget.cpp:439
+msgid "Change Bug Title"
+msgstr "Vaihda vikailmoituksen otsikko"
+
+#: gui/centralwidget.cpp:440
+msgid "Please enter a new title:"
+msgstr "Anna uusi otsikko:"
+
+#: gui/cwbugdetails.cpp:85
+msgid "Bug Report from %1 "
+msgstr "Vikailmoitus lähettäjältä %1 "
+
+#: gui/cwbugdetails.cpp:88
+#, c-format
+msgid ""
+"_n: (1 reply)\n"
+"(%n replies)"
+msgstr ""
+"(1 vastaus)\n"
+"(%n vastausta)"
+
+#: gui/cwbugdetails.cpp:92
+#, c-format
+msgid ""
+"_n: 1 day old\n"
+"%n days old"
+msgstr ""
+"1 päivää vanha\n"
+"%n päivää vanha"
+
+#: gui/cwbugdetails.cpp:102 gui/preferencesdialog.cpp:59
+msgid "Version"
+msgstr "Versio"
+
+#: gui/cwbugdetails.cpp:103
+msgid "Source"
+msgstr "Lähde"
+
+#: gui/cwbugdetails.cpp:104
+msgid "Compiler"
+msgstr "Kääntäjä"
+
+#: gui/cwbugdetails.cpp:105
+msgid "OS"
+msgstr "Käyttöjärjestelmä"
+
+#: gui/cwbugdetails.cpp:123
+msgid "Bug Report from %1"
+msgstr "Vikailmoitus lähettäjältä %1"
+
+#: gui/cwbugdetails.cpp:127
+msgid "Reply #%1 from %2"
+msgstr "Vastaus #%1 lähettäjältä %2"
+
+#: gui/cwbugdetails.cpp:151
+msgid "Attachment List"
+msgstr "Liiteluettelo"
+
+#: gui/cwbugdetails.cpp:153 gui/packageselectdialog.cpp:69
+msgid "Description"
+msgstr "Kuvaus"
+
+#: gui/cwbugdetails.cpp:154
+msgid "Date"
+msgstr "Päiväys"
+
+#: gui/cwbugdetailscontainer.cpp:123
+msgid ""
+"_: bug #number [Merged with: a list of bugs] (severity): title\n"
+"Bug #%1 [Merged with: %2] (%3): %4"
+msgstr "Vika #%1 [Yhdistetty vikoihin: %2] (%3): %4"
+
+#: gui/cwbugdetailscontainer.cpp:132
+msgid ""
+"_: bug #number (severity): title\n"
+"Bug #%1 (%2): %3"
+msgstr "Vika #%1 (%2): %3"
+
+#: gui/cwbugdetailscontainer.cpp:152
+msgid "Pending commands:"
+msgstr "Odottavat komennot:"
+
+#: gui/cwbugdetailscontainer.cpp:205
+msgid "Click here to select a bug by number"
+msgstr "Napsauta tätä valitaksesi vian numeron perusteella"
+
+#: gui/cwbugdetailscontainer.cpp:214
+msgid ""
+"Retrieving Details for Bug %1\n"
+"\n"
+"(%2)"
+msgstr ""
+"Haetaan tietoja viasta %1\n"
+"\n"
+"(%2)"
+
+#: gui/cwbugdetailscontainer.cpp:226
+msgid "Bug #%1 (%2) is not available offline."
+msgstr "Vika #%1 (%2) ei ole saatavilla offline-tilassa."
+
+#: gui/cwbugdetailscontainer.cpp:229
+msgid ""
+"Retrieving details for bug #%1\n"
+"(%2)"
+msgstr ""
+"Haetaan tietoja viasta #%1\n"
+"(%2)"
+
+#: gui/cwbuglistcontainer.cpp:68
+msgid "Number"
+msgstr "Numero"
+
+#: gui/cwbuglistcontainer.cpp:69
+msgid "Age"
+msgstr "Ikä"
+
+#: gui/cwbuglistcontainer.cpp:70
+msgid "Title"
+msgstr "Otsikko"
+
+#: gui/cwbuglistcontainer.cpp:71
+msgid "Status"
+msgstr "Tila"
+
+#: gui/cwbuglistcontainer.cpp:73
+msgid "Sender"
+msgstr "Lähettäjä"
+
+#: gui/cwbuglistcontainer.cpp:146
+msgid "%1 (%2 bugs, %3 wishes)"
+msgstr "%1 (%2 vikailmoitusta, %3 toivetta)"
+
+#: gui/cwbuglistcontainer.cpp:156
+msgid "Product '%1', all components"
+msgstr "Tuote '%1', kaikki komponentit"
+
+#: gui/cwbuglistcontainer.cpp:158
+msgid "Product '%1'"
+msgstr "Tuote '%1'"
+
+#: gui/cwbuglistcontainer.cpp:162
+msgid "Product '%1', component '%2'"
+msgstr "Tuote '%1', komponentti '%2'"
+
+#: gui/cwbuglistcontainer.cpp:203
+msgid "Outstanding Bugs"
+msgstr "Selvittämättömät vikailmoitukset"
+
+#: gui/cwbuglistcontainer.cpp:204
+msgid "Click here to select a product"
+msgstr "Napsauta tästä valitaksesi tuotteen"
+
+#: gui/cwbuglistcontainer.cpp:211
+msgid "Retrieving List of Outstanding Bugs for Product '%1'..."
+msgstr "Haetaan luetteloa tuotteen '%1' selvittämättömistä vioista..."
+
+#: gui/cwbuglistcontainer.cpp:213
+msgid "Retrieving List of Outstanding Bugs for Product '%1' (Component %2)..."
+msgstr ""
+"Haetaan luetteloa selvittämättömistä vioista tuotteelle '%1'(Komponentti %2)"
+
+#: gui/cwbuglistcontainer.cpp:224
+msgid "Package '%1'"
+msgstr "Paketti '%1'"
+
+#: gui/cwbuglistcontainer.cpp:229
+msgid "%1 is not available offline."
+msgstr "%1 ei ole saatavilla offlne-tilassa."
+
+#: gui/cwloadingwidget.cpp:149
+msgid ""
+"Welcome to KBugBuster, a tool to manage the KDE Bug Report System. With "
+"KBugBuster you can manage outstanding bug reports for KDE from a convenient "
+"front end."
+msgstr ""
+"Tervetuloa käyttämään KBugBuster-työkalua, jolla käytetään KDE:n "
+"vikailmoitusjärjestelmää. KBugBusterilla voidaan hallita KDE:n vikailmoituksia "
+"suoraan graafisella käyttöliittymällä."
+
+#: gui/kbbmainwindow.cpp:100
+msgid "Welcome to KBugBuster."
+msgstr "Tervetuloa KBugBusteriin."
+
+#: gui/kbbmainwindow.cpp:149
+msgid "Quit KBugBuster"
+msgstr "Poistu KBugBusterista"
+
+#: gui/kbbmainwindow.cpp:151
+msgid "See &Pending Changes"
+msgstr "Ta&rkastele odottavia muutoksia"
+
+#: gui/kbbmainwindow.cpp:153
+msgid "&Submit Changes"
+msgstr "Toteuta m&uutokset"
+
+#: gui/kbbmainwindow.cpp:156
+msgid "Reload &Product List"
+msgstr "Lataa &tuotelista uudelleen"
+
+#: gui/kbbmainwindow.cpp:158
+msgid "Reload Bug &List (for current product)"
+msgstr "Lataa (nykyisen tuotteen) vika&lista uudelleen"
+
+#: gui/kbbmainwindow.cpp:160
+msgid "Reload Bug &Details (for current bug)"
+msgstr "Lataa (nykyisen) vian ti&edot uudelleen"
+
+#: gui/kbbmainwindow.cpp:162
+msgid "Load &My Bugs List"
+msgstr "Lataa &oma vikalista"
+
+#: gui/kbbmainwindow.cpp:164
+msgid "Load All Bug Details (for current product)"
+msgstr "Lataa kaikki (nykyisen tuotteen) vikatiedot"
+
+#: gui/kbbmainwindow.cpp:165
+msgid "Extract &Attachments"
+msgstr "Pu&ra liitteet"
+
+#: gui/kbbmainwindow.cpp:168
+msgid "Clear Cache"
+msgstr "Tyhjennä välimuisti"
+
+#: gui/kbbmainwindow.cpp:171
+msgid "&Search by Product..."
+msgstr "Et&si tuotteen mukaan..."
+
+#: gui/kbbmainwindow.cpp:173
+msgid "Search by Bug &Number..."
+msgstr "Etsi vian nu&merolla..."
+
+#: gui/kbbmainwindow.cpp:177
+msgid "Search by &Description..."
+msgstr "Etsi ku&vauksen perusteella..."
+
+#: gui/kbbmainwindow.cpp:207
+msgid "&Disconnected Mode"
+msgstr "Yhte&ydetön tila"
+
+#: gui/kbbmainwindow.cpp:220
+msgid "Show Closed Bugs"
+msgstr "Näytä suljetut vikailmoitukset"
+
+#: gui/kbbmainwindow.cpp:223
+msgid "Hide Closed Bugs"
+msgstr "Kätke suljetut viat"
+
+#: gui/kbbmainwindow.cpp:227
+msgid "Show Wishes"
+msgstr "Näytä toiveet"
+
+#: gui/kbbmainwindow.cpp:230
+msgid "Hide Wishes"
+msgstr "Piilota toiveet"
+
+#: gui/kbbmainwindow.cpp:234 gui/preferencesdialog.cpp:278
+msgid "Select Server"
+msgstr "Valitse palvelin"
+
+#: gui/kbbmainwindow.cpp:243
+msgid "Show Last Server Response..."
+msgstr "Näytä palvelimen viimeinen vastaus..."
+
+#: gui/kbbmainwindow.cpp:246
+msgid "Show Bug HTML Source..."
+msgstr "Näytä vian HTML-lähdekoodi..."
+
+#: gui/kbbmainwindow.cpp:344
+msgid "List of pending commands:"
+msgstr "Luettelo odottavista komennoista:"
+
+#: gui/kbbmainwindow.cpp:349
+msgid "Do you really want to delete all commands?"
+msgstr "Haluatko varmasti poistaa kaikki komennot?"
+
+#: gui/kbbmainwindow.cpp:350
+msgid "Confirmation Required"
+msgstr "Vahvistus vaaditaan"
+
+#: gui/kbbmainwindow.cpp:357
+msgid "There are no pending commands."
+msgstr "Ei odottavia komentoja."
+
+#: gui/kbbmainwindow.cpp:392
+msgid "Search for Bug Number"
+msgstr "Etsi vian numerolla"
+
+#: gui/kbbmainwindow.cpp:393
+msgid "Please enter a bug number:"
+msgstr "Anna vian numero:"
+
+#: gui/kbbmainwindow.cpp:422
+msgid "There are unsent bug commands. Do you want to send them now?"
+msgstr "Lähettämättömiä vikakomentoja. Haluatko lähettää ne nyt?"
+
+#: gui/kbbmainwindow.cpp:423
+msgid "Send"
+msgstr "Lähetä"
+
+#: gui/kbbmainwindow.cpp:423
+msgid "Do Not Send"
+msgstr "Älä lähetä"
+
+#: gui/kbbmainwindow.cpp:475
+msgid "Last Server Response"
+msgstr "Palvelimen viimeinen vastaus"
+
+#: gui/kbbmainwindow.cpp:487
+msgid "Bug HTML Source"
+msgstr "Vian HTML-lähdekoodi"
+
+#: gui/loadallbugsdlg.cpp:29
+#, c-format
+msgid "Loading All Bugs for Product %1"
+msgstr "Ladataan kaikki tuotteen %1 viat"
+
+#: gui/loadallbugsdlg.cpp:48
+msgid "Bug %1 loaded"
+msgstr "Vika %1 ladattu"
+
+#: gui/messageeditor.cpp:18
+msgid "Edit Message Buttons"
+msgstr "Muokkaa viestinäppäimiä"
+
+#: gui/messageeditor.cpp:27
+msgid "Button:"
+msgstr "Näppäin:"
+
+#: gui/messageeditor.cpp:34
+msgid "Add Button..."
+msgstr "Lisää näppäin..."
+
+#: gui/messageeditor.cpp:38
+msgid "Remove Button"
+msgstr "Poista näppäin"
+
+#: gui/messageeditor.cpp:65
+msgid "Add Message Button"
+msgstr "Lisää viestinäppäin"
+
+#: gui/messageeditor.cpp:66
+msgid "Enter button name:"
+msgstr "Anna näppäimen nimi:"
+
+#: gui/messageeditor.cpp:82
+msgid "Remove the button %1?"
+msgstr "Poistetaanko näppäin %1?"
+
+#: gui/msginputdialog.cpp:25
+msgid "&Edit Presets..."
+msgstr "M&uokkaa pohjia..."
+
+#: gui/msginputdialog.cpp:32
+#, c-format
+msgid "Close Bug %1"
+msgstr "Sulje vika %1"
+
+#: gui/msginputdialog.cpp:35
+msgid "Reply to Bug"
+msgstr "Vastaa vikaan"
+
+#: gui/msginputdialog.cpp:38
+msgid "Reply Privately to Bug"
+msgstr "Vastaa vikaan yksityisesti"
+
+#: gui/msginputdialog.cpp:56
+msgid "&Recipient:"
+msgstr "Vastaanotta&ja:"
+
+#: gui/msginputdialog.cpp:63
+msgid "Normal (bugs.kde.org & Maintainer & kde-bugs-dist)"
+msgstr "Normaali (bugs.kde.org & Maintainer & kde-bugs-dist)"
+
+#: gui/msginputdialog.cpp:64
+msgid "Maintonly (bugs.kde.org & Maintainer)"
+msgstr "Vain yllöpitäjä (bugs.kde.org & Maintainer)"
+
+#: gui/msginputdialog.cpp:65
+msgid "Quiet (bugs.kde.org only)"
+msgstr "Hiljaa (vain bugs.kde.org)"
+
+#: gui/msginputdialog.cpp:77
+msgid "&Message"
+msgstr "V&iesti"
+
+#: gui/msginputdialog.cpp:90
+msgid "&Preset Messages"
+msgstr "Viestipo&hjat"
+
+#: gui/packageselectdialog.cpp:43
+msgid "Select Product"
+msgstr "Valitse tuote"
+
+#: gui/packageselectdialog.cpp:55
+msgid "Recent"
+msgstr "Viimeaikainen"
+
+#: gui/packageselectdialog.cpp:68 gui/preferencesdialog.cpp:56
+msgid "Name"
+msgstr "Nimi"
+
+#: gui/preferencesdialog.cpp:57
+msgid "Base URL"
+msgstr "Perus-URL-osoite"
+
+#: gui/preferencesdialog.cpp:58
+msgid "User"
+msgstr "Käyttäjä"
+
+#: gui/preferencesdialog.cpp:64
+msgid "Preferences"
+msgstr "Asetukset"
+
+#: gui/preferencesdialog.cpp:79
+msgid "Servers"
+msgstr "Palvelimet"
+
+#: gui/preferencesdialog.cpp:92
+msgid "Add Server..."
+msgstr "Lisää palvelin..."
+
+#: gui/preferencesdialog.cpp:95
+msgid "Edit Server..."
+msgstr "Muokkaa palvelinta..."
+
+#: gui/preferencesdialog.cpp:98
+msgid "Delete Server"
+msgstr "Poista palvelin"
+
+#: gui/preferencesdialog.cpp:101
+msgid "Select Server From List..."
+msgstr "Valitse palvelin luettelosta..."
+
+#: gui/preferencesdialog.cpp:110
+msgid "Advanced"
+msgstr "Lisäasetukset"
+
+#: gui/preferencesdialog.cpp:117
+msgid "Mail Client"
+msgstr "Sähköpostin asiakasohjelma"
+
+#: gui/preferencesdialog.cpp:120
+msgid "&KMail"
+msgstr "&Kmail"
+
+#: gui/preferencesdialog.cpp:121
+msgid "D&irect"
+msgstr "Suor&a"
+
+#: gui/preferencesdialog.cpp:122
+msgid "&Sendmail"
+msgstr "Sen&dmail"
+
+#: gui/preferencesdialog.cpp:124
+msgid "Show closed bugs"
+msgstr "Näytä suljetut viat"
+
+#: gui/preferencesdialog.cpp:127
+msgid "Show wishes"
+msgstr "Näytä toiveet"
+
+#: gui/preferencesdialog.cpp:130
+msgid "Show bugs with number of votes greater than:"
+msgstr "Näytä viat, joiden kannatus on suurempi kuin:"
+
+#: gui/preferencesdialog.cpp:139
+msgid "Send BCC to myself"
+msgstr "Lähetä piilokopio omaan sähköpostiosoitteeseen"
+
+#: gui/serverconfigdialog.cpp:16
+msgid "Edit Bugzilla Server"
+msgstr "Muokkaa Bugzilla-palvelinta"
+
+#: gui/serverconfigdialog.cpp:26
+msgid "Name:"
+msgstr "Nimi:"
+
+#: gui/serverconfigdialog.cpp:32
+msgid "URL:"
+msgstr "URL-osoite:"
+
+#: gui/serverconfigdialog.cpp:37
+msgid "User:"
+msgstr "Käyttäjä:"
+
+#: gui/serverconfigdialog.cpp:42
+msgid "Password:"
+msgstr "Salasana:"
+
+#: gui/serverconfigdialog.cpp:47
+msgid "Bugzilla version:"
+msgstr "Bugzillan versio:"
+
+#: gui/severityselectdialog.cpp:14
+msgid "Select Severity"
+msgstr "Valitse vakavuus"
+
+#: kresources/kcalresourceconfig.cpp:45
+msgid "Server:"
+msgstr "Palvelin:"
+
+#: kresources/kcalresourceconfig.cpp:52
+msgid "Product:"
+msgstr "Tuote:"
+
+#: kresources/kcalresourceconfig.cpp:59
+msgid "Component:"
+msgstr "Komponentti:"
diff --git a/tde-i18n-fi/messages/tdesdk/kcachegrind.po b/tde-i18n-fi/messages/tdesdk/kcachegrind.po
new file mode 100644
index 00000000000..7657d9a7a5a
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kcachegrind.po
@@ -0,0 +1,2572 @@
+# translation of kcachegrind.po to finnish
+#
+# Ilpo Kantonen , 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: kcachegrind\n"
+"POT-Creation-Date: 2008-07-08 01:21+0200\n"
+"PO-Revision-Date: 2006-09-21 17:02+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: instritem.cpp:106 sourceitem.cpp:86
+msgid "Active call to '%1'"
+msgstr ""
+
+#: instritem.cpp:108 sourceitem.cpp:88
+msgid ""
+"_n: %n call to '%1'\n"
+"%n calls to '%1'"
+msgstr ""
+
+#: instritem.cpp:137
+msgid "Jump %1 of %2 times to 0x%3"
+msgstr ""
+
+#: instritem.cpp:142
+msgid "Jump %1 times to 0x%2"
+msgstr ""
+
+#: instritem.cpp:185 sourceitem.cpp:169
+msgid "(cycle)"
+msgstr ""
+
+#: tracedata.cpp:157
+msgid "Abstract Item"
+msgstr ""
+
+#: tracedata.cpp:158
+msgid "Cost Item"
+msgstr ""
+
+#: tracedata.cpp:159
+msgid "Part Source Line"
+msgstr ""
+
+#: tracedata.cpp:160
+msgid "Source Line"
+msgstr "Lähdekoodin rivi"
+
+#: tracedata.cpp:161
+msgid "Part Line Call"
+msgstr ""
+
+#: tracedata.cpp:162
+msgid "Line Call"
+msgstr ""
+
+#: tracedata.cpp:163
+msgid "Part Jump"
+msgstr ""
+
+#: tracedata.cpp:164
+msgid "Jump"
+msgstr ""
+
+#: tracedata.cpp:165
+msgid "Part Instruction"
+msgstr ""
+
+#: tracedata.cpp:166
+msgid "Instruction"
+msgstr ""
+
+#: tracedata.cpp:167
+msgid "Part Instruction Jump"
+msgstr ""
+
+#: tracedata.cpp:168
+msgid "Instruction Jump"
+msgstr ""
+
+#: tracedata.cpp:169
+msgid "Part Instruction Call"
+msgstr ""
+
+#: tracedata.cpp:170
+msgid "Instruction Call"
+msgstr ""
+
+#: tracedata.cpp:171
+msgid "Part Call"
+msgstr ""
+
+#: tracedata.cpp:172
+msgid "Call"
+msgstr "Kutsu"
+
+#: tracedata.cpp:173
+msgid "Part Function"
+msgstr ""
+
+#: tracedata.cpp:174
+msgid "Function Source File"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 300
+#: rc.cpp:144 rc.cpp:273 rc.cpp:318 rc.cpp:342 tracedata.cpp:175
+#, no-c-format
+msgid "Function"
+msgstr "Funktio"
+
+#: tracedata.cpp:176
+msgid "Function Cycle"
+msgstr ""
+
+#: tracedata.cpp:177
+msgid "Part Class"
+msgstr ""
+
+#: tracedata.cpp:178
+msgid "Class"
+msgstr ""
+
+#: tracedata.cpp:179
+msgid "Part Source File"
+msgstr ""
+
+#: tracedata.cpp:180
+msgid "Source File"
+msgstr "Lähdekoodin tiedosto"
+
+#: tracedata.cpp:181
+msgid "Part ELF Object"
+msgstr ""
+
+#: tracedata.cpp:182
+msgid "ELF Object"
+msgstr "ELF-objekti"
+
+#: partview.cpp:46 tracedata.cpp:183
+msgid "Profile Part"
+msgstr ""
+
+#: tracedata.cpp:184
+msgid "Program Trace"
+msgstr ""
+
+#: tracedata.cpp:245
+msgid "%1 from %2"
+msgstr ""
+
+#: partgraph.cpp:423 tracedata.cpp:253 tracedata.cpp:258 tracedata.cpp:2828
+#: tracedata.cpp:3245 tracedata.cpp:3331 tracedata.cpp:4169 tracedata.cpp:4177
+#: tracedata.cpp:4242
+msgid "(unknown)"
+msgstr ""
+
+#: tracedata.cpp:2587
+msgid "(no caller)"
+msgstr ""
+
+#: tracedata.cpp:2594 tracedata.cpp:2613
+msgid "%1 via %2"
+msgstr ""
+
+#: tracedata.cpp:2603
+msgid "(no callee)"
+msgstr ""
+
+#: tracedata.cpp:4471
+msgid "(not found)"
+msgstr ""
+
+#: tracedata.cpp:5021
+msgid "Recalculating Function Cycles..."
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 550
+#: callmapview.cpp:59 partselection.cpp:58 rc.cpp:192
+#, no-c-format
+msgid "Name"
+msgstr "Nimi"
+
+#. i18n: file stackselectionbase.ui line 31
+#: callmapview.cpp:60 callview.cpp:44 instrview.cpp:126 partselection.cpp:59
+#: rc.cpp:333 sourceview.cpp:51
+#, no-c-format
+msgid "Cost"
+msgstr ""
+
+#: partselection.cpp:151
+msgid "Profile Part Overview: Current is '%1'"
+msgstr ""
+
+#: partselection.cpp:287
+msgid "Deselect"
+msgstr ""
+
+#: partselection.cpp:287 partselection.cpp:311
+msgid "Select"
+msgstr "Valitse"
+
+#: partselection.cpp:292
+msgid "Select All Parts"
+msgstr "Valitse kaikki osat"
+
+#: partselection.cpp:294
+msgid "Visible Parts"
+msgstr "Näkyvät osat"
+
+#: partselection.cpp:296
+msgid "Hide Selected Parts"
+msgstr "Piilota valitut osat"
+
+#: partselection.cpp:297
+msgid "Unhide Hidden Parts"
+msgstr "Näytä valitut osat"
+
+#: partselection.cpp:302 toplevel.cpp:1692
+msgid "Go Back"
+msgstr "Mene takaisin"
+
+#: callgraphview.cpp:2571 partselection.cpp:320
+msgid "Visualization"
+msgstr "Visualisointi"
+
+#: partselection.cpp:322
+msgid "Partitioning Mode"
+msgstr ""
+
+#: partselection.cpp:323
+msgid "Diagram Mode"
+msgstr ""
+
+#: partselection.cpp:324
+msgid "Zoom Function"
+msgstr ""
+
+#: partselection.cpp:325
+msgid "Show Direct Calls"
+msgstr ""
+
+#: partselection.cpp:326
+msgid "Increment Shown Call Levels"
+msgstr ""
+
+#: partselection.cpp:340
+msgid "Draw Names"
+msgstr ""
+
+#: partselection.cpp:341
+msgid "Draw Costs"
+msgstr ""
+
+#: callmapview.cpp:303 partselection.cpp:342
+msgid "Ignore Proportions"
+msgstr ""
+
+#: partselection.cpp:343
+msgid "Draw Frames"
+msgstr ""
+
+#: callmapview.cpp:304 partselection.cpp:344 treemap.cpp:2887
+msgid "Allow Rotation"
+msgstr ""
+
+#: partselection.cpp:359
+msgid "Hide Info"
+msgstr ""
+
+#: partselection.cpp:361
+msgid "Show Info"
+msgstr ""
+
+#: partselection.cpp:541
+msgid "(no trace loaded)"
+msgstr ""
+
+#: costtypeview.cpp:42
+msgid "Event Type"
+msgstr "Tapahtuman tyyppi"
+
+#. i18n: file dumpselectionbase.ui line 917
+#: costtypeview.cpp:43 coverageview.cpp:46 partview.cpp:47 rc.cpp:267
+#: rc.cpp:309
+#, no-c-format
+msgid "Incl."
+msgstr "ml."
+
+#. i18n: file functionselectionbase.ui line 62
+#: costtypeview.cpp:44 coverageview.cpp:53 partview.cpp:48 rc.cpp:303
+#: rc.cpp:312
+#, no-c-format
+msgid "Self"
+msgstr "Itse"
+
+#: costtypeview.cpp:45
+msgid "Short"
+msgstr "Lyhyt"
+
+#: costtypeview.cpp:47
+msgid "Formula"
+msgstr "Kaava"
+
+#: costtypeview.cpp:81
+msgid ""
+"Cost Types List"
+"This list shows all cost types available and what the self/inclusive cost of "
+"the current selected function is for that cost type.
"
+"By choosing a cost type from the list, you change the cost type of costs "
+"shown all over KCachegrind to be the selected one.
"
+msgstr ""
+
+#: costtypeview.cpp:98
+msgid "Set Secondary Event Type"
+msgstr ""
+
+#: costtypeview.cpp:100
+msgid "Remove Secondary Event Type"
+msgstr ""
+
+#: costtypeview.cpp:105
+msgid "Edit Long Name"
+msgstr "Muokkaa pitkää nimeä"
+
+#: costtypeview.cpp:106
+msgid "Edit Short Name"
+msgstr "Muokkaa lyhyttä nimeä"
+
+#: costtypeview.cpp:107
+msgid "Edit Formula"
+msgstr "Muokkaa kaavaa"
+
+#: costtypeview.cpp:115
+msgid "New Cost Type ..."
+msgstr ""
+
+#: costtypeview.cpp:149 costtypeview.cpp:154
+#, c-format
+msgid "New%1"
+msgstr ""
+
+#: costtypeview.cpp:155
+#, c-format
+msgid "New Cost Type %1"
+msgstr ""
+
+#: sourceitem.cpp:125
+msgid "Jump %1 of %2 times to %3"
+msgstr ""
+
+#: sourceitem.cpp:130
+msgid "Jump %1 times to %2"
+msgstr ""
+
+#: costlistitem.cpp:60
+#, c-format
+msgid ""
+"_n: (%n item skipped)\n"
+"(%n items skipped)"
+msgstr ""
+
+#: traceitemview.cpp:53
+msgid "No description available"
+msgstr "Kuvausta ei ole saatavilla"
+
+#. i18n: file partselectionbase.ui line 16
+#: rc.cpp:324 toplevel.cpp:281 toplevel.cpp:581
+#, no-c-format
+msgid "Parts Overview"
+msgstr ""
+
+#: toplevel.cpp:288
+msgid ""
+"The Parts Overview"
+"A trace consists of multiple trace parts when there are several profile data "
+"files from one profile run. The Trace Part Overview dockable shows these, "
+"horizontally ordered in execution time; the rectangle sizes are proportional to "
+"the total cost spent in the parts. You can select one or several parts to "
+"constrain all costs shown to these parts only.
"
+"The parts are further subdivided: there is a partitioning and an callee "
+"split mode: "
+"
"
+"- Partitioning: You see the partitioning into groups for a trace part, "
+"according to the group type selected. E.g. if ELF object groups are selected, "
+"you see colored rectangles for each used ELF object (shared library or "
+"executable), sized according to the cost spent therein.
"
+"- Callee: A rectangle showing the inclusive cost of the current selected "
+"function in the trace part is shown. This is split up into smaller rectangles "
+"to show the costs of its callees.
"
+msgstr ""
+
+#: toplevel.cpp:318
+msgid "Top Cost Call Stack"
+msgstr ""
+
+#: toplevel.cpp:320
+msgid ""
+"The Top Cost Call Stack"
+"This is a purely fictional 'most probable' call stack. It is built up by "
+"starting with the current selected function and adds the callers/callees with "
+"highest cost at the top and to bottom.
"
+"The Cost and Calls columns show the cost used for all calls "
+"from the function in the line above.
"
+msgstr ""
+
+#: toplevel.cpp:333
+msgid "Flat Profile"
+msgstr ""
+
+#: toplevel.cpp:343
+msgid ""
+"The Flat Profile"
+"The flat profile contains a group and a function selection list. The group "
+"list contains all groups where costs are spent in, depending on the chosen "
+"group type. The group list is hidden when group type 'Function' is selected."
+"
"
+"
The function list contains the functions of the selected group (or all for "
+"'Function' group type), ordered by the costs spent therein. Functions with "
+"costs less than 1% are hidden on default.
"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 16
+#: rc.cpp:84 toplevel.cpp:357 toplevel.cpp:609
+#, no-c-format
+msgid "Profile Dumps"
+msgstr ""
+
+#: toplevel.cpp:367
+msgid ""
+"Profile Dumps"
+"This dockable shows in the top part the list of loadable profile dumps in "
+"all subdirectories of: "
+"
"
+"- current working directory of KCachegrind, i.e. where it was started from, "
+"and "
+"
- the default profile dump directory given in the configuration.
"
+"The list is sorted according the the target command profiled in the "
+"corresponding dump.
"
+"On selecting a profile dump, information for it is shown in the bottom area "
+"of the dockable: "
+"
"
+"- Options allows you to view the profiled command and profile options "
+"of this dump. By changing any item, a new (yet unexisting) profile template is "
+"created. Press Run Profile to start aprofile run with these options in "
+"the background. "
+"
- Info gives detailed info on the selected dump like event cost "
+"summary and properties of the simulated cache. "
+"
- State is only available for current happening profiles runs. Press "
+"Update to see different counters of the run, and a stack trace of the "
+"current position in the program profiled. Check the Every "
+"option to let KCachegrind regularly poll these data. Check the Sync "
+"option to let the dockable activate the top function in the current loaded "
+"dump.
"
+msgstr ""
+
+#: toplevel.cpp:455
+msgid "&Duplicate"
+msgstr ""
+
+#: toplevel.cpp:459
+msgid ""
+"Duplicate Current Layout"
+"Make a copy of the current layout.
"
+msgstr ""
+
+#: toplevel.cpp:466
+msgid ""
+"Remove Current Layout"
+"Delete current layout and make the previous active.
"
+msgstr ""
+
+#: toplevel.cpp:470
+msgid "&Go to Next"
+msgstr "&Mene seuraavaan"
+
+#: toplevel.cpp:474
+msgid "Go to Next Layout"
+msgstr ""
+
+#: toplevel.cpp:477
+msgid "&Go to Previous"
+msgstr "&Mene edelliseen"
+
+#: toplevel.cpp:481
+msgid "Go to Previous Layout"
+msgstr ""
+
+#: toplevel.cpp:484
+msgid "&Restore to Default"
+msgstr ""
+
+#: toplevel.cpp:487
+msgid "Restore Layouts to Default"
+msgstr ""
+
+#: toplevel.cpp:490
+msgid "&Save as Default"
+msgstr ""
+
+#: toplevel.cpp:493
+msgid "Save Layouts as Default"
+msgstr ""
+
+#: toplevel.cpp:504
+msgid "NewOpen new empty KCachegrind window.
"
+msgstr ""
+
+#: toplevel.cpp:507
+msgid "&Add..."
+msgstr "&Lisää..."
+
+#: toplevel.cpp:510
+msgid ""
+"Add Profile Data"
+"This opens an additional profile data file in the current window.
"
+msgstr ""
+
+#: toplevel.cpp:522
+msgid "Reload Profile DataThis loads any new created parts, too.
"
+msgstr ""
+
+#: toplevel.cpp:526
+msgid "&Export Graph"
+msgstr "&Vie graafi"
+
+#: toplevel.cpp:530
+msgid ""
+"Export Call Graph"
+"Generates a file with extension .dot for the tools of the GraphViz "
+"package.
"
+msgstr ""
+
+#: toplevel.cpp:536
+msgid "&Force Dump"
+msgstr ""
+
+#: toplevel.cpp:545
+msgid ""
+"Force Dump"
+"This forces a dump for a Callgrind profile run in the current directory. "
+"This action is checked while KCachegrind looks for the dump. If the dump is "
+"finished, it automatically reloads the current trace. If this is the one from "
+"the running Callgrind, the new created trace part will be loaded, too.
"
+"Force dump creates a file 'callgrind.cmd', and checks every second for its "
+"existence. A running Callgrind will detect this file, dump a trace part, and "
+"delete 'callgrind.cmd'. The deletion is detected by KCachegrind, and it does a "
+"Reload. If there's no Callgrind running, press 'Force Dump' again to "
+"cancel the dump request. This deletes 'callgrind.cmd' itself and stops polling "
+"for a new dump.
"
+"Note: A Callgrind run only detects existence of 'callgrind.cmd' "
+"when actively running a few milliseconds, i.e. not "
+"sleeping. Tip: For a profiled GUI program, you can awake Callgrind e.g. by "
+"resizing a window of the program.
"
+msgstr ""
+
+#: toplevel.cpp:570
+msgid ""
+"Open Profile Data"
+"This opens a profile data file, with possible multiple parts
"
+msgstr ""
+
+#: toplevel.cpp:586
+msgid "Show/Hide the Parts Overview Dockable"
+msgstr ""
+
+#: toplevel.cpp:590
+msgid "Call Stack"
+msgstr "Kutsupino"
+
+#: toplevel.cpp:595
+msgid "Show/Hide the Call Stack Dockable"
+msgstr ""
+
+#. i18n: file functionselectionbase.ui line 16
+#: rc.cpp:297 toplevel.cpp:599
+#, no-c-format
+msgid "Function Profile"
+msgstr ""
+
+#: toplevel.cpp:604
+msgid "Show/Hide the Function Profile Dockable"
+msgstr ""
+
+#: toplevel.cpp:614
+msgid "Show/Hide the Profile Dumps Dockable"
+msgstr ""
+
+#: toplevel.cpp:619
+msgid "Show Relative Costs"
+msgstr ""
+
+#: toplevel.cpp:626
+msgid "Show Absolute Costs"
+msgstr ""
+
+#: toplevel.cpp:629
+msgid "Show relative instead of absolute costs"
+msgstr ""
+
+#: toplevel.cpp:633
+msgid "Percentage Relative to Parent"
+msgstr ""
+
+#: toplevel.cpp:639
+msgid "Show percentage costs relative to parent"
+msgstr ""
+
+#: toplevel.cpp:643
+msgid ""
+"Show percentage costs relative to parent"
+"If this is switched off, percentage costs are always shown relative to the "
+"total cost of the profile part(s) that are currently browsed. By turning on "
+"this option, percentage cost of shown cost items will be relative to the parent "
+"cost item."
+"
"
+""
+""
+"Cost Type | "
+"Parent Cost |
"
+""
+"Function Cumulative | "
+"Total |
"
+""
+"Function Self | "
+"Function Group (*) / Total |
"
+""
+"Call | "
+"Function Cumulative |
"
+""
+"Source Line | "
+"Function Cumulative |
"
+"(*) Only if function grouping is switched on (e.g. ELF object grouping)."
+msgstr ""
+
+#: toplevel.cpp:658
+msgid "Do Cycle Detection"
+msgstr ""
+
+#: toplevel.cpp:664
+msgid "Skip Cycle Detection"
+msgstr ""
+
+#: toplevel.cpp:667
+msgid ""
+"Detect recursive cycles"
+"
If this is switched off, the treemap drawing will show black areas when a "
+"recursive call is made instead of drawing the recursion ad infinitum. Note that "
+"the size of black areas often will be wrong, as inside recursive cycles the "
+"cost of calls cannot be determined; the error is small, however, for false "
+"cycles (see documentation)."
+"
The correct handling for cycles is to detect them and collapse all functions "
+"of a cycle into a virtual function, which is done when this option is selected. "
+"Unfortunately, with GUI applications, this often will lead to huge false "
+"cycles, making the analysis impossible; therefore, there is the option to "
+"switch this off."
+msgstr ""
+
+#: toplevel.cpp:689 toplevel.cpp:729
+msgid "Go back in function selection history"
+msgstr ""
+
+#: toplevel.cpp:695 toplevel.cpp:741
+msgid "Go forward in function selection history"
+msgstr ""
+
+#: toplevel.cpp:701 toplevel.cpp:715
+msgid ""
+"Go Up"
+"
Go to last selected caller of current function. If no caller was visited, "
+"use that with highest cost.
"
+msgstr ""
+
+#: toplevel.cpp:707
+msgid "&Up"
+msgstr ""
+
+#: toplevel.cpp:746 toplevel.cpp:1651
+msgid "Primary Event Type"
+msgstr ""
+
+#: toplevel.cpp:748
+msgid "Select primary event type of costs"
+msgstr ""
+
+#: toplevel.cpp:758 toplevel.cpp:1654
+msgid "Secondary Event Type"
+msgstr ""
+
+#: toplevel.cpp:760
+msgid "Select secondary event type for cost e.g. shown in annotations"
+msgstr ""
+
+#: functionselection.cpp:243 toplevel.cpp:768
+msgid "Grouping"
+msgstr "Ryhmittely"
+
+#: toplevel.cpp:771
+msgid "Select how functions are grouped into higher level cost items"
+msgstr ""
+
+#: functionselection.cpp:52 toplevel.cpp:777
+msgid "(No Grouping)"
+msgstr "(Ei ryhmittelyä)"
+
+#: toplevel.cpp:787
+msgid "Split"
+msgstr ""
+
+#: toplevel.cpp:791
+msgid "Show two information panels"
+msgstr ""
+
+#: toplevel.cpp:795
+msgid "Split Horizontal"
+msgstr ""
+
+#: toplevel.cpp:800
+msgid "Change Split Orientation when main window is split."
+msgstr ""
+
+#: toplevel.cpp:808
+msgid "Tip of the &Day..."
+msgstr ""
+
+#: toplevel.cpp:809
+msgid "Show \"Tip of the Day\""
+msgstr ""
+
+#: toplevel.cpp:1012 toplevel.cpp:1061
+msgid ""
+"cachegrind.out* callgrind.out*|Callgrind Profile Data\n"
+"*|All Files"
+msgstr ""
+
+#: toplevel.cpp:1014
+msgid "Select Callgrind Profile Data"
+msgstr ""
+
+#: toplevel.cpp:1063
+msgid "Add Callgrind Profile Data"
+msgstr ""
+
+#: toplevel.cpp:1221 toplevel.cpp:1574
+msgid "(Hidden)"
+msgstr "(piilotettu)"
+
+#: toplevel.cpp:1626
+msgid "Hide"
+msgstr "Piilota"
+
+#: toplevel.cpp:1659
+msgid "Show Absolute Cost"
+msgstr ""
+
+#: toplevel.cpp:1662
+msgid "Show Relative Cost"
+msgstr ""
+
+#: toplevel.cpp:1693
+msgid "Go Forward"
+msgstr "Mene eteenpäin"
+
+#: toplevel.cpp:1694
+msgid "Go Up"
+msgstr "Mene ylös"
+
+#: toplevel.cpp:1926
+#, c-format
+msgid "Layout Count: %1"
+msgstr ""
+
+#: toplevel.cpp:1933
+msgid "No profile data file loaded."
+msgstr "Profilointitietojen tiedostoa ei ole ladattu."
+
+#: toplevel.cpp:1942
+msgid "Total %1 Cost: %2"
+msgstr ""
+
+#: toplevel.cpp:1954
+msgid "No event type selected"
+msgstr "Tapahtuman tyyppiä ei ole valittu"
+
+#: toplevel.cpp:2199 toplevel.cpp:2235 toplevel.cpp:2271
+msgid "(No Stack)"
+msgstr "(Ei pinoa)"
+
+#: toplevel.cpp:2205
+msgid "(No next function)"
+msgstr "(Ei seuraavaa funktiota)"
+
+#: toplevel.cpp:2241
+msgid "(No previous function)"
+msgstr "(Ei edellistä funktiota)"
+
+#: toplevel.cpp:2276
+msgid "(No Function Up)"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 906
+#: instrview.cpp:125 rc.cpp:264 sourceview.cpp:50
+#, no-c-format
+msgid "#"
+msgstr "#"
+
+#: callview.cpp:45 instrview.cpp:127 sourceview.cpp:52
+msgid "Cost 2"
+msgstr ""
+
+#: instrview.cpp:129
+msgid "Hex"
+msgstr "Heksa"
+
+#: instrview.cpp:131 tabview.cpp:313
+msgid "Assembler"
+msgstr "Assembler"
+
+#: instrview.cpp:132
+msgid "Source Position"
+msgstr "Lähdekoodin paikka"
+
+#: instrview.cpp:163
+msgid ""
+"Annotated Assembler"
+"The annotated assembler list shows the machine code instructions of the "
+"current selected function together with (self) cost spent while executing an "
+"instruction. If this is a call instruction, lines with details on the call "
+"happening are inserted into the source: the cost spent inside of the call, the "
+"number of calls happening, and the call destination.
"
+"The disassembler output shown is generated with the 'objdump' utility from "
+"the 'binutils' package.
"
+"Select a line with call information to make the destination function of this "
+"call current.
"
+msgstr ""
+
+#: callgraphview.cpp:2397 callgraphview.cpp:2401 callgraphview.cpp:2419
+#: callview.cpp:123 callview.cpp:128 coverageview.cpp:166 instrview.cpp:191
+#: sourceview.cpp:116
+msgid "Go to '%1'"
+msgstr "Mene '%1'"
+
+#: instrview.cpp:195
+#, c-format
+msgid "Go to Address %1"
+msgstr "Mene osoitteeseen %1"
+
+#: instrview.cpp:207
+msgid "Hex Code"
+msgstr "Heksakoodi"
+
+#: instrview.cpp:426
+msgid "There is no instruction info in the profile data file."
+msgstr ""
+
+#: instrview.cpp:428
+msgid "For the Valgrind Calltree Skin, rerun with option"
+msgstr ""
+
+#: instrview.cpp:429
+msgid " --dump-instr=yes"
+msgstr ""
+
+#: instrview.cpp:430
+msgid "To see (conditional) jumps, additionally specify"
+msgstr ""
+
+#: instrview.cpp:431
+msgid " --trace-jump=yes"
+msgstr ""
+
+#: instrview.cpp:629
+msgid "There is an error trying to execute the command"
+msgstr ""
+
+#: instrview.cpp:634 instrview.cpp:900
+msgid "Check that you have installed 'objdump'."
+msgstr ""
+
+#: instrview.cpp:636 instrview.cpp:902
+msgid "This utility can be found in the 'binutils' package."
+msgstr ""
+
+#: instrview.cpp:739
+msgid "(No Assembler)"
+msgstr "(Ei Assembleria)"
+
+#: instrview.cpp:875
+#, c-format
+msgid ""
+"_n: There is %n cost line without assembler code.\n"
+"There are %n cost lines without assembler code."
+msgstr ""
+
+#: instrview.cpp:877
+msgid "This happens because the code of"
+msgstr "Tämä tapahtuu, koska koodi"
+
+#: instrview.cpp:880
+msgid "does not seem to match the profile data file."
+msgstr "ei näytä täsmäävän profilointitietojen tiedoston kanssa."
+
+#: instrview.cpp:883
+msgid "Are you using an old profile data file or is the above mentioned"
+msgstr "Joko käytät vanhaa profilointitietojen tiedostoa tai yllä mainittu"
+
+#: instrview.cpp:885
+msgid "ELF object from an updated installation/another machine?"
+msgstr "ELF-objekti päivitetystä asennuksesta / toisesta koneesta?"
+
+#: instrview.cpp:893
+msgid "There seems to be an error trying to execute the command"
+msgstr "Komennon suorituksen yrityksessä näyttää olevan virhe"
+
+#: instrview.cpp:898
+msgid "Check that the ELF object used in the command exists."
+msgstr "Tarkista, että komennossa käytetty ELF-objekti on olemassa."
+
+#: callgraphview.cpp:306
+#, c-format
+msgid "Call(s) from %1"
+msgstr "Kutsu(t) kohteesta %1"
+
+#: callgraphview.cpp:307
+#, c-format
+msgid "Call(s) to %1"
+msgstr "Kutsu(t) kohteeseen %1"
+
+#: callgraphview.cpp:308
+msgid "(unknown call)"
+msgstr "(tuntematon kutsu)"
+
+#: callgraphview.cpp:1425
+msgid ""
+"Call Graph around active Function"
+"Depending on configuration, this view shows the call graph environment of "
+"the active function. Note: the shown cost is only "
+"the cost which is spent while the active function was actually running; i.e. "
+"the cost shown for main() - if it's visible - should be the same as the cost of "
+"the active function, as that's the part of inclusive cost of main() spent while "
+"the active function was running.
"
+"For cycles, blue call arrows indicate that this is an artificial call added "
+"for correct drawing which actually never happened.
"
+"If the graph is larger than the widget area, an overview panner is shown in "
+"one edge. There are similar visualization options to the Call Treemap; the "
+"selected function is highlighted."
+"
"
+msgstr ""
+
+#: callgraphview.cpp:1789
+msgid ""
+"Warning: a long lasting graph layouting is in progress.\n"
+"Reduce node/edge limits for speedup.\n"
+msgstr ""
+
+#: callgraphview.cpp:1792
+msgid ""
+"Layouting stopped.\n"
+msgstr ""
+
+#: callgraphview.cpp:1794
+msgid ""
+"The call graph has %1 nodes and %2 edges.\n"
+msgstr ""
+
+#: callgraphview.cpp:1827
+msgid "No item activated for which to draw the call graph."
+msgstr ""
+
+#: callgraphview.cpp:1838
+msgid "No call graph can be drawn for the active item."
+msgstr ""
+
+#: callgraphview.cpp:1867
+msgid ""
+"No call graph is available because the following\n"
+"command cannot be run:\n"
+"'%1'\n"
+msgstr ""
+
+#: callgraphview.cpp:1870 callgraphview.cpp:2200
+msgid "Please check that 'dot' is installed (package GraphViz)."
+msgstr ""
+
+#: callgraphview.cpp:2199
+msgid ""
+"Error running the graph layouting tool.\n"
+msgstr ""
+
+#: callgraphview.cpp:2207
+msgid ""
+"There is no call graph available for function\n"
+"\t'%1'\n"
+"because it has no cost of the selected event type."
+msgstr ""
+
+#: callgraphview.cpp:2428
+msgid "Stop Layouting"
+msgstr ""
+
+#: callgraphview.cpp:2436
+msgid "As PostScript"
+msgstr "PostScriptinä"
+
+#: callgraphview.cpp:2437
+msgid "As Image ..."
+msgstr "Kuvana ..."
+
+#: callgraphview.cpp:2439
+msgid "Export Graph"
+msgstr "Vie graafi"
+
+#: callgraphview.cpp:2444 callgraphview.cpp:2467
+msgid "Unlimited"
+msgstr "Rajoittamaton"
+
+#: callgraphview.cpp:2447 callgraphview.cpp:2470
+msgid "None"
+msgstr "Ei mikään"
+
+#: callgraphview.cpp:2448 callgraphview.cpp:2471
+msgid "max. 2"
+msgstr "max. 2"
+
+#: callgraphview.cpp:2449 callgraphview.cpp:2472
+msgid "max. 5"
+msgstr "max. 5"
+
+#: callgraphview.cpp:2450 callgraphview.cpp:2473
+msgid "max. 10"
+msgstr "max. 10"
+
+#: callgraphview.cpp:2451 callgraphview.cpp:2474
+msgid "max. 15"
+msgstr "max. 15"
+
+#: callgraphview.cpp:2461 callgraphview.cpp:2484
+#, c-format
+msgid "< %1"
+msgstr "< %1"
+
+#: callgraphview.cpp:2490
+msgid "No Minimum"
+msgstr "Ei pienintä arvoa"
+
+#: callgraphview.cpp:2494
+#, c-format
+msgid "50 %"
+msgstr "50 %"
+
+#: callgraphview.cpp:2495
+#, c-format
+msgid "20 %"
+msgstr "20 %"
+
+#: callgraphview.cpp:2496
+#, c-format
+msgid "10 %"
+msgstr "10 %"
+
+#: callgraphview.cpp:2497
+#, c-format
+msgid "5 %"
+msgstr "5 %"
+
+#: callgraphview.cpp:2498
+#, c-format
+msgid "3 %"
+msgstr "3 %"
+
+#: callgraphview.cpp:2499
+#, c-format
+msgid "2 %"
+msgstr "2 %"
+
+#: callgraphview.cpp:2500
+#, c-format
+msgid "1.5 %"
+msgstr "1.5 %"
+
+#: callgraphview.cpp:2501
+#, c-format
+msgid "1 %"
+msgstr "1 %"
+
+#: callgraphview.cpp:2517
+msgid "Same as Node"
+msgstr "Sama kuin solmu"
+
+#: callgraphview.cpp:2518
+#, c-format
+msgid "50 % of Node"
+msgstr "50 % solmusta"
+
+#: callgraphview.cpp:2519
+#, c-format
+msgid "20 % of Node"
+msgstr "20 % solmusta"
+
+#: callgraphview.cpp:2520
+#, c-format
+msgid "10 % of Node"
+msgstr "10 % solmusta"
+
+#: callgraphview.cpp:2530
+msgid "Caller Depth"
+msgstr ""
+
+#: callgraphview.cpp:2531
+msgid "Callee Depth"
+msgstr ""
+
+#: callgraphview.cpp:2532
+msgid "Min. Node Cost"
+msgstr ""
+
+#: callgraphview.cpp:2533
+msgid "Min. Call Cost"
+msgstr ""
+
+#: callgraphview.cpp:2535
+msgid "Arrows for Skipped Calls"
+msgstr ""
+
+#: callgraphview.cpp:2537
+msgid "Inner-cycle Calls"
+msgstr ""
+
+#: callgraphview.cpp:2539
+msgid "Cluster Groups"
+msgstr ""
+
+#: callgraphview.cpp:2544
+msgid "Compact"
+msgstr "Kompakti"
+
+#: callgraphview.cpp:2545
+msgid "Normal"
+msgstr "Normaali"
+
+#: callgraphview.cpp:2546
+msgid "Tall"
+msgstr "Pitkä"
+
+#: callgraphview.cpp:2551
+msgid "Top to Down"
+msgstr "Ylhäältä alas"
+
+#: callgraphview.cpp:2552
+msgid "Left to Right"
+msgstr "Vasemmalta oikealle"
+
+#: callgraphview.cpp:2553
+msgid "Circular"
+msgstr ""
+
+#: callgraphview.cpp:2559
+msgid "TopLeft"
+msgstr ""
+
+#: callgraphview.cpp:2560
+msgid "TopRight"
+msgstr ""
+
+#: callgraphview.cpp:2561
+msgid "BottomLeft"
+msgstr ""
+
+#: callgraphview.cpp:2562
+msgid "BottomRight"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 246
+#: callgraphview.cpp:2563 rc.cpp:42 rc.cpp:51 rc.cpp:54
+#, no-c-format
+msgid "Automatic"
+msgstr "Automaattinen"
+
+#: callgraphview.cpp:2570
+msgid "Graph"
+msgstr "Graafi"
+
+#: callgraphview.cpp:2572
+msgid "Birds-eye View"
+msgstr ""
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Ilpo Kantonen"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "ilpo@iki.fi"
+
+#: coverageitem.cpp:65 coverageitem.cpp:205 functionitem.cpp:72
+#, c-format
+msgid ""
+"_n: (%n function skipped)\n"
+"(%n functions skipped)"
+msgstr ""
+
+#: main.cpp:38
+msgid "Run under cachegrind"
+msgstr ""
+
+#: main.cpp:39
+msgid "Show information of this trace"
+msgstr ""
+
+#: main.cpp:46
+msgid "KCachegrind"
+msgstr "KCachegrind"
+
+#: main.cpp:48
+msgid "KDE Frontend for Cachegrind"
+msgstr "KDE edustaohjelma Cachegrindille"
+
+#: main.cpp:50
+msgid "(C) 2002, 2003, 2004"
+msgstr "(C) 2002, 2003, 2004"
+
+#: main.cpp:53
+msgid "Author/Maintainer"
+msgstr "Tekijä/Ylläpitäjä"
+
+#: tabview.cpp:64
+msgid "Move to Top"
+msgstr ""
+
+#: tabview.cpp:68
+msgid "Move to Right"
+msgstr ""
+
+#: tabview.cpp:72
+msgid "Move to Bottom"
+msgstr ""
+
+#: tabview.cpp:76
+msgid "Move to Bottom Left"
+msgstr ""
+
+#: tabview.cpp:77 tabview.cpp:94 treemap.cpp:2908
+msgid "Bottom Left"
+msgstr ""
+
+#: tabview.cpp:79
+msgid "Move Area To"
+msgstr ""
+
+#: tabview.cpp:81
+msgid "Hide This Tab"
+msgstr ""
+
+#: tabview.cpp:82
+msgid "Hide Area"
+msgstr ""
+
+#: tabview.cpp:95
+msgid "Show Hidden On"
+msgstr ""
+
+#: tabview.cpp:242
+msgid "(No profile data file loaded)"
+msgstr ""
+
+#: tabview.cpp:281
+msgid "Types"
+msgstr "Tyypit"
+
+#: tabview.cpp:284
+msgid "Callers"
+msgstr ""
+
+#: tabview.cpp:287
+msgid "All Callers"
+msgstr ""
+
+#: tabview.cpp:290
+msgid "Caller Map"
+msgstr ""
+
+#: tabview.cpp:293
+msgid "Source"
+msgstr "Lähde"
+
+#: tabview.cpp:297
+msgid "Parts"
+msgstr ""
+
+#: tabview.cpp:300
+msgid "Call Graph"
+msgstr ""
+
+#: tabview.cpp:303
+msgid "Callees"
+msgstr ""
+
+#: tabview.cpp:306
+msgid "All Callees"
+msgstr ""
+
+#: tabview.cpp:310
+msgid "Callee Map"
+msgstr ""
+
+#: tabview.cpp:553
+msgid ""
+"Information Tabs"
+"This widget shows information for the current selected function in different "
+"tabs: "
+"
"
+"- The Costs tab shows a list of available event types and the inclusive and "
+"self costs regarding to these types.
"
+"- The Parts tab shows a list of trace parts if the trace consists of more "
+"than one part (otherwise, this tab is hided). The cost of the selected function "
+"spent in the different parts together with the calls happening is shown.
"
+"- The Call Lists tab shows direct callers and callees of the function in more "
+"detail.
"
+"- The Coverage tab shows the same is the Call Lists tab, but not only direct "
+"callers and callees but also indirect ones.
"
+"- The Call Graph tab shows a graphical visualization of the calls done by "
+"this function.
"
+"- The Source tab presents annotated source code if debugging information and "
+"the source file is available.
"
+"- The Assembler tab presents annotated assembler code if trace information on "
+"instruction level is available.
For more information, see the "
+"What's This? help of the corresponding tab widget
"
+msgstr ""
+
+#: tabview.cpp:630
+msgid "(No Data loaded)"
+msgstr "(Tietoja ei ole ladattu)"
+
+#: tabview.cpp:631
+msgid "(No function selected)"
+msgstr "(Funktiota ei ole valittu)"
+
+#: sourceview.cpp:54 sourceview.cpp:554
+msgid "Source (unknown)"
+msgstr "Lähdekoodi (tuntematon)"
+
+#: sourceview.cpp:89
+msgid ""
+"Annotated Source"
+"The annotated source list shows the source lines of the current selected "
+"function together with (self) cost spent while executing the code of this "
+"source line. If there was a call in a source line, lines with details on the "
+"call happening are inserted into the source: the cost spent inside of the call, "
+"the number of calls happening, and the call destination.
"
+"Select a inserted call information line to make the destination function "
+"current.
"
+msgstr ""
+
+#: sourceview.cpp:120
+#, c-format
+msgid "Go to Line %1"
+msgstr "Mene riville %1"
+
+#: sourceview.cpp:293
+msgid "(No Source)"
+msgstr "(Ei lähdekoodia)"
+
+#: sourceview.cpp:512
+msgid "There is no cost of current selected type associated"
+msgstr ""
+
+#: sourceview.cpp:514
+msgid "with any source line of this function in file"
+msgstr ""
+
+#: sourceview.cpp:518
+msgid "Thus, no annotated source can be shown."
+msgstr ""
+
+#: sourceview.cpp:553
+msgid "Source ('%1')"
+msgstr "Lähdekoodi ('%1')"
+
+#: sourceview.cpp:559
+msgid "--- Inlined from '%1' ---"
+msgstr ""
+
+#: sourceview.cpp:560
+msgid "--- Inlined from unknown source ---"
+msgstr ""
+
+#: sourceview.cpp:565
+msgid "There is no source available for the following function:"
+msgstr ""
+
+#: sourceview.cpp:570
+msgid "This is because no debug information is present."
+msgstr ""
+
+#: sourceview.cpp:572
+msgid "Recompile source and redo the profile run."
+msgstr ""
+
+#: sourceview.cpp:575
+msgid "The function is located in this ELF object:"
+msgstr ""
+
+#: sourceview.cpp:583
+msgid "This is because its source file cannot be found:"
+msgstr ""
+
+#: sourceview.cpp:587
+msgid "Add the folder of this file to the source folder list."
+msgstr ""
+
+#: sourceview.cpp:589
+msgid "The list can be found in the configuration dialog."
+msgstr ""
+
+#: partlistitem.cpp:49
+msgid " (Thread %1)"
+msgstr " (Säie %1)"
+
+#: partlistitem.cpp:56
+msgid "(none)"
+msgstr "(ei mikään)"
+
+#: callitem.cpp:82 partlistitem.cpp:152
+msgid "(active)"
+msgstr "(aktiivinen)"
+
+#: functionselection.cpp:176
+#, c-format
+msgid "Go to %1"
+msgstr "Mene %1"
+
+#: functionselection.cpp:203
+msgid "Show All Items"
+msgstr "Näytä kaikki"
+
+#: functionselection.cpp:226
+msgid "No Grouping"
+msgstr "Ei ryhmittelyä"
+
+#: coverageview.cpp:48 coverageview.cpp:54
+msgid "Distance"
+msgstr "Välimatka"
+
+#. i18n: file dumpselectionbase.ui line 928
+#: coverageview.cpp:49 partview.cpp:49 rc.cpp:270 rc.cpp:315
+#, no-c-format
+msgid "Called"
+msgstr "Kutsuttu"
+
+#: callview.cpp:48 coverageview.cpp:50
+msgid "Caller"
+msgstr "Kutsuja"
+
+#: coverageview.cpp:55
+msgid "Calling"
+msgstr "Kutsuu"
+
+#: callview.cpp:52 coverageview.cpp:56
+msgid "Callee"
+msgstr "Kutsuttava"
+
+#: coverageview.cpp:90
+msgid ""
+"List of all Callers"
+"This list shows all functions calling the current selected one, either "
+"directly or with several functions in-between on the stack; the number of "
+"functions in-between plus one is called the Distance "
+"(e.g. for function A,B,C there exists a call from A to C when A calls B and B "
+"calls C, i.e. A => B => C. The distance here is 2).
"
+"Absolute cost shown is the cost spent in the selected function while a "
+"listed function is active; relative cost is the percentage of all cost spent in "
+"the selected function while the listed one is active. The cost graphic shows "
+"logarithmic percentage with a different color for each distance.
"
+"As there can be many calls from the same function, the distance column "
+"sometimes shows the range of distances for all calls happening; then, in "
+"parentheses, there is the medium distance, i.e. the distance where most of the "
+"call costs happened.
"
+"Selecting a function makes it the current selected one of this information "
+"panel. If there are two panels (Split mode), the function of the other panel is "
+"changed instead.
"
+msgstr ""
+
+#: coverageview.cpp:120
+msgid ""
+"List of all Callees"
+"This list shows all functions called by the current selected one, either "
+"directly or with several function in-between on the stack; the number of "
+"function in-between plus one is called the Distance "
+"(e.g. for function A,B,C there exists a call from A to C when A calls B and B "
+"calls C, i.e. A => B => C. The distance here is 2).
"
+"Absolute cost shown is the cost spent in the listed function while the "
+"selected is active; relative cost is the percentage of all cost spent in the "
+"listed function while the selected one is active. The cost graphic always shows "
+"logarithmic percentage with a different color for each distance.
"
+"As there can be many calls to the same function, the distance column "
+"sometimes shows the range of distances for all calls happening; then, in "
+"parentheses, there is the medium distance, i.e. the distance where most of the "
+"call costs happened.
"
+"Selecting a function makes it the current selected one of this information "
+"panel. If there are two panels (Split mode), the function of the other panel is "
+"changed instead.
"
+msgstr ""
+
+#: configuration.cpp:63
+msgid "Instruction Fetch"
+msgstr ""
+
+#: configuration.cpp:64
+msgid "Data Read Access"
+msgstr ""
+
+#: configuration.cpp:65
+msgid "Data Write Access"
+msgstr ""
+
+#: configuration.cpp:66
+msgid "L1 Instr. Fetch Miss"
+msgstr ""
+
+#: configuration.cpp:67
+msgid "L1 Data Read Miss"
+msgstr ""
+
+#: configuration.cpp:68
+msgid "L1 Data Write Miss"
+msgstr ""
+
+#: configuration.cpp:69
+msgid "L2 Instr. Fetch Miss"
+msgstr ""
+
+#: configuration.cpp:70
+msgid "L2 Data Read Miss"
+msgstr ""
+
+#: configuration.cpp:71
+msgid "L2 Data Write Miss"
+msgstr ""
+
+#: configuration.cpp:72
+msgid "Samples"
+msgstr "Esimerkit"
+
+#: configuration.cpp:73
+msgid "System Time"
+msgstr ""
+
+#: configuration.cpp:74
+msgid "User Time"
+msgstr ""
+
+#: configuration.cpp:75
+msgid "L1 Miss Sum"
+msgstr ""
+
+#: configuration.cpp:76
+msgid "L2 Miss Sum"
+msgstr ""
+
+#: configuration.cpp:77
+msgid "Cycle Estimation"
+msgstr ""
+
+#. i18n: file kcachegrindui.rc line 15
+#: rc.cpp:9
+#, no-c-format
+msgid "&Layout"
+msgstr ""
+
+#. i18n: file kcachegrindui.rc line 32
+#: rc.cpp:12
+#, no-c-format
+msgid "Sidebars"
+msgstr ""
+
+#. i18n: file kcachegrindui.rc line 54
+#: rc.cpp:18
+#, no-c-format
+msgid "State Toolbar"
+msgstr "Tilatyökalupalkki"
+
+#. i18n: file configdlgbase.ui line 37
+#: rc.cpp:24
+#, no-c-format
+msgid "General"
+msgstr "Yleinen"
+
+#. i18n: file configdlgbase.ui line 69
+#: rc.cpp:27
+#, no-c-format
+msgid "Truncated when more/longer than:"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 77
+#: rc.cpp:30
+#, no-c-format
+msgid "Precision of percentage values:"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 85
+#: rc.cpp:33
+#, no-c-format
+msgid "Symbols in tooltips and context menus"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 141
+#: rc.cpp:36
+#, no-c-format
+msgid "Maximum number of items in lists:"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 162
+#: rc.cpp:39
+#, no-c-format
+msgid "Cost Item Colors"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 254
+#: rc.cpp:45
+#, no-c-format
+msgid "Object:"
+msgstr "Objekti:"
+
+#. i18n: file configdlgbase.ui line 262
+#: rc.cpp:48
+#, no-c-format
+msgid "Class:"
+msgstr "Luokka:"
+
+#. i18n: file configdlgbase.ui line 310
+#: rc.cpp:57
+#, no-c-format
+msgid "File:"
+msgstr "Tiedosto:"
+
+#. i18n: file configdlgbase.ui line 376
+#: rc.cpp:60
+#, no-c-format
+msgid "Annotations"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 395
+#: rc.cpp:63
+#, no-c-format
+msgid "Context lines in annotations:"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 423
+#: rc.cpp:66
+#, no-c-format
+msgid "Source Folders"
+msgstr "Lähdekansiot"
+
+#. i18n: file configdlgbase.ui line 454
+#: rc.cpp:69
+#, no-c-format
+msgid "Object / Related Source Base"
+msgstr ""
+
+#. i18n: file configdlgbase.ui line 483
+#: rc.cpp:72
+#, no-c-format
+msgid "Add..."
+msgstr "Lisää"
+
+#. i18n: file dumpselectionbase.ui line 32
+#: rc.cpp:87
+#, no-c-format
+msgid "Target"
+msgstr "Kohde"
+
+#. i18n: file dumpselectionbase.ui line 54
+#: rc.cpp:90
+#, no-c-format
+msgid "Time"
+msgstr "Aika"
+
+#. i18n: file dumpselectionbase.ui line 65
+#: rc.cpp:93
+#, no-c-format
+msgid "Path"
+msgstr "Polku"
+
+#. i18n: file dumpselectionbase.ui line 106
+#: rc.cpp:99
+#, no-c-format
+msgid "Target command:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 119
+#: rc.cpp:102
+#, no-c-format
+msgid "Profiler options:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 125
+#: rc.cpp:105
+#, no-c-format
+msgid "Option"
+msgstr "Ominaisuus"
+
+#. i18n: file dumpselectionbase.ui line 136
+#: rc.cpp:108 rc.cpp:219
+#, no-c-format
+msgid "Value"
+msgstr "Arvo"
+
+#. i18n: file dumpselectionbase.ui line 147
+#: rc.cpp:111
+#, no-c-format
+msgid "Trace"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 160
+#: rc.cpp:114 rc.cpp:237
+#, no-c-format
+msgid "Jumps"
+msgstr "Hypyt"
+
+#. i18n: file dumpselectionbase.ui line 174
+#: rc.cpp:117
+#, no-c-format
+msgid "Instructions"
+msgstr "Ohjeet"
+
+#. i18n: file dumpselectionbase.ui line 189
+#: rc.cpp:120 rc.cpp:240
+#, no-c-format
+msgid "Events"
+msgstr "Tapahtumat"
+
+#. i18n: file dumpselectionbase.ui line 202
+#: rc.cpp:123
+#, no-c-format
+msgid "Full Cache"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 216
+#: rc.cpp:126
+#, no-c-format
+msgid "Custom"
+msgstr "Oma"
+
+#. i18n: file dumpselectionbase.ui line 231
+#: rc.cpp:129
+#, no-c-format
+msgid "Collect"
+msgstr "Kerää"
+
+#. i18n: file dumpselectionbase.ui line 244
+#: rc.cpp:132
+#, no-c-format
+msgid "At Startup"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 258
+#: rc.cpp:135
+#, no-c-format
+msgid "While In"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 273
+#: rc.cpp:138
+#, no-c-format
+msgid "Skip"
+msgstr "Ohita"
+
+#. i18n: file dumpselectionbase.ui line 286
+#: rc.cpp:141
+#, no-c-format
+msgid "PLT"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 315
+#: rc.cpp:147
+#, no-c-format
+msgid "Dump Profile"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 328
+#: rc.cpp:150
+#, no-c-format
+msgid "Every BBs"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 342
+#: rc.cpp:153 rc.cpp:162
+#, no-c-format
+msgid "On Entering"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 356
+#: rc.cpp:156
+#, no-c-format
+msgid "On Leaving"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 371
+#: rc.cpp:159
+#, no-c-format
+msgid "Zero Events"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 399
+#: rc.cpp:165
+#, no-c-format
+msgid "Separate"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 412
+#: rc.cpp:168
+#, no-c-format
+msgid "Threads"
+msgstr "Säikeet"
+
+#. i18n: file dumpselectionbase.ui line 426
+#: rc.cpp:171
+#, no-c-format
+msgid "Recursions"
+msgstr "Rekursiot"
+
+#. i18n: file dumpselectionbase.ui line 440
+#: rc.cpp:174
+#, no-c-format
+msgid "Call Chain"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 470
+#: rc.cpp:177
+#, no-c-format
+msgid "Custom profiler options:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 508
+#: rc.cpp:180
+#, no-c-format
+msgid "Run New Profile"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 520
+#: rc.cpp:183
+#, no-c-format
+msgid "Info"
+msgstr "Tiedot"
+
+#. i18n: file dumpselectionbase.ui line 531
+#: rc.cpp:186
+#, no-c-format
+msgid "Dump reason:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 544
+#: rc.cpp:189
+#, no-c-format
+msgid "Event summary:"
+msgstr "Tapahtumayhteenveto:"
+
+#. i18n: file dumpselectionbase.ui line 561
+#: rc.cpp:195
+#, no-c-format
+msgid "Sum"
+msgstr "Summa"
+
+#. i18n: file dumpselectionbase.ui line 579
+#: rc.cpp:198
+#, no-c-format
+msgid "Miscellaneous:"
+msgstr "Sekalaista:"
+
+#. i18n: file dumpselectionbase.ui line 617
+#: rc.cpp:201
+#, no-c-format
+msgid "Show"
+msgstr "Näytä"
+
+#. i18n: file dumpselectionbase.ui line 625
+#: rc.cpp:204
+#, no-c-format
+msgid "Compare"
+msgstr "Vertaile"
+
+#. i18n: file dumpselectionbase.ui line 637
+#: rc.cpp:207
+#, no-c-format
+msgid "State"
+msgstr "Tila"
+
+#. i18n: file dumpselectionbase.ui line 656
+#: rc.cpp:210
+#, no-c-format
+msgid "Update"
+msgstr "Päivitä"
+
+#. i18n: file dumpselectionbase.ui line 664
+#: rc.cpp:213
+#, no-c-format
+msgid "Every [s]:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 677
+#: rc.cpp:216
+#, no-c-format
+msgid "Counter"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 699
+#: rc.cpp:222
+#, no-c-format
+msgid "Dumps Done"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 713
+#: rc.cpp:225
+#, no-c-format
+msgid "Is Collecting"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 727
+#: rc.cpp:228
+#, no-c-format
+msgid "Executed"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 740
+#: rc.cpp:231
+#, no-c-format
+msgid "Basic Blocks"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 754
+#: callmapview.cpp:63 rc.cpp:234 rc.cpp:339
+#, no-c-format
+msgid "Calls"
+msgstr "Kutsut"
+
+#. i18n: file dumpselectionbase.ui line 796
+#: rc.cpp:243
+#, no-c-format
+msgid "Ir"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 811
+#: rc.cpp:246
+#, no-c-format
+msgid "Distinct"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 824
+#: configdlg.cpp:58 rc.cpp:249
+#, no-c-format
+msgid "ELF Objects"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 838
+#: rc.cpp:252
+#, no-c-format
+msgid "Functions"
+msgstr "Funktiot"
+
+#. i18n: file dumpselectionbase.ui line 852
+#: rc.cpp:255
+#, no-c-format
+msgid "Contexts"
+msgstr "Konteksti"
+
+#. i18n: file dumpselectionbase.ui line 890
+#: rc.cpp:258
+#, no-c-format
+msgid "Stack trace:"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 898
+#: rc.cpp:261
+#, no-c-format
+msgid "Sync."
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 950
+#: callmapview.cpp:61 rc.cpp:276 rc.cpp:321
+#, no-c-format
+msgid "Location"
+msgstr "Sijainti"
+
+#. i18n: file dumpselectionbase.ui line 976
+#: rc.cpp:279
+#, no-c-format
+msgid "Start"
+msgstr "Alku"
+
+#. i18n: file dumpselectionbase.ui line 1001
+#: rc.cpp:282
+#, no-c-format
+msgid "Zero"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 1009
+#: rc.cpp:285
+#, no-c-format
+msgid "Dump"
+msgstr ""
+
+#. i18n: file dumpselectionbase.ui line 1021
+#: rc.cpp:288
+#, no-c-format
+msgid "Messages"
+msgstr "Viestit"
+
+#. i18n: file dumpselectionbase.ui line 1045
+#: rc.cpp:291
+#, no-c-format
+msgid "Kill Run"
+msgstr ""
+
+#. i18n: file functionselectionbase.ui line 41
+#: rc.cpp:300
+#, no-c-format
+msgid "&Search:"
+msgstr ""
+
+#. i18n: file functionselectionbase.ui line 73
+#: rc.cpp:306
+#, no-c-format
+msgid "Group"
+msgstr "Ryhmä"
+
+#. i18n: file partselectionbase.ui line 60
+#: rc.cpp:327
+#, no-c-format
+msgid "(no trace parts)"
+msgstr ""
+
+#. i18n: file stackselectionbase.ui line 16
+#: rc.cpp:330
+#, no-c-format
+msgid "Stack Selection"
+msgstr ""
+
+#. i18n: file stackselectionbase.ui line 42
+#: rc.cpp:336
+#, no-c-format
+msgid "Cost2"
+msgstr ""
+
+#: treemap.cpp:1281
+#, c-format
+msgid "Text %1"
+msgstr "Teksti %1"
+
+#: treemap.cpp:2809
+msgid "Recursive Bisection"
+msgstr ""
+
+#: treemap.cpp:2810
+msgid "Columns"
+msgstr "Sarakkeita"
+
+#: treemap.cpp:2811
+msgid "Rows"
+msgstr "Rivejä"
+
+#: treemap.cpp:2812
+msgid "Always Best"
+msgstr "Aina paras"
+
+#: treemap.cpp:2813
+msgid "Best"
+msgstr "Paras"
+
+#: treemap.cpp:2814
+msgid "Alternate (V)"
+msgstr ""
+
+#: treemap.cpp:2815
+msgid "Alternate (H)"
+msgstr ""
+
+#: treemap.cpp:2872
+msgid "Nesting"
+msgstr ""
+
+#: treemap.cpp:2875
+msgid "Correct Borders Only"
+msgstr ""
+
+#: treemap.cpp:2877 treemap.cpp:2878 treemap.cpp:2879 treemap.cpp:2880
+#, c-format
+msgid "Width %1"
+msgstr ""
+
+#: callmapview.cpp:321 treemap.cpp:2889
+msgid "Shading"
+msgstr "Varjostava"
+
+#: treemap.cpp:2902
+msgid "Visible"
+msgstr "Näkyvä"
+
+#: treemap.cpp:2903
+msgid "Take Space From Children"
+msgstr ""
+
+#: treemap.cpp:2905
+msgid "Top Left"
+msgstr ""
+
+#: treemap.cpp:2906
+msgid "Top Center"
+msgstr ""
+
+#: treemap.cpp:2907
+msgid "Top Right"
+msgstr ""
+
+#: treemap.cpp:2909
+msgid "Bottom Center"
+msgstr ""
+
+#: treemap.cpp:2910
+msgid "Bottom Right"
+msgstr ""
+
+#: treemap.cpp:2987
+msgid "No %1 Limit"
+msgstr ""
+
+#: callmapview.cpp:243 treemap.cpp:3039
+msgid "No Area Limit"
+msgstr ""
+
+#: callmapview.cpp:258 treemap.cpp:3045
+msgid "Area of '%1' (%2)"
+msgstr ""
+
+#: treemap.cpp:3056 treemap.cpp:3067
+#, c-format
+msgid ""
+"_n: 1 Pixel\n"
+"%n Pixels"
+msgstr ""
+
+#: callmapview.cpp:264 treemap.cpp:3071
+msgid "Double Area Limit (to %1)"
+msgstr ""
+
+#: treemap.cpp:3073
+msgid "Halve Area Limit (to %1)"
+msgstr ""
+
+#: callmapview.cpp:187 treemap.cpp:3101
+msgid "No Depth Limit"
+msgstr ""
+
+#: callmapview.cpp:198 treemap.cpp:3107
+msgid "Depth of '%1' (%2)"
+msgstr ""
+
+#: treemap.cpp:3118
+#, c-format
+msgid "Depth %1"
+msgstr ""
+
+#: treemap.cpp:3122
+msgid "Decrement (to %1)"
+msgstr ""
+
+#: treemap.cpp:3124
+msgid "Increment (to %1)"
+msgstr ""
+
+#: callmapview.cpp:98
+msgid ""
+"Caller Map"
+"This graph shows the nested hierarchy of all callers of the current "
+"activated function. Each colored rectangle represents a function; its size "
+"tries to be proportional to the cost spent therein while the active function is "
+"running (however, there are drawing constrains).
"
+msgstr ""
+
+#: callmapview.cpp:105
+msgid ""
+"Call Map"
+"This graph shows the nested hierarchy of all callees of the current "
+"activated function. Each colored rectangle represents a function; its size "
+"tries to be proportional to the cost spent therein while the active function is "
+"running (however, there are drawing constrains).
"
+msgstr ""
+
+#: callmapview.cpp:113
+msgid ""
+"Appearance options can be found in the in the context menu. To get exact "
+"size proportions, choose 'Hide incorrect borders'. As this mode can be "
+"very time consuming, you may want to limit the maximum drawn nesting level "
+"before. 'Best' determinates the split direction for children from the aspect "
+"ratio of the parent. 'Always Best' decides on remaining space for each sibling. "
+"'Ignore Proportions' takes space for function name drawing before "
+"drawing children. Note that size proportions can get heavily wrong.
"
+"This is a TreeMap widget. Keyboard navigation is available with the "
+"left/right arrow keys for traversing siblings, and up/down arrow keys to go a "
+"nesting level up/down. Return activates the current item.
"
+msgstr ""
+
+#: callmapview.cpp:167
+msgid "Go To"
+msgstr "Mene"
+
+#: callmapview.cpp:184
+msgid "Stop at Depth"
+msgstr "Pysähdy syvyydellä"
+
+#: callmapview.cpp:190
+msgid "Depth 10"
+msgstr "Syvyys 10"
+
+#: callmapview.cpp:192
+msgid "Depth 15"
+msgstr "Syvyys 15"
+
+#: callmapview.cpp:194
+msgid "Depth 20"
+msgstr "Syvyys 20"
+
+#: callmapview.cpp:204
+msgid "Decrement Depth (to %1)"
+msgstr ""
+
+#: callmapview.cpp:205
+msgid "Increment Depth (to %1)"
+msgstr ""
+
+#: callmapview.cpp:209
+msgid "Stop at Function"
+msgstr ""
+
+#: callmapview.cpp:210
+msgid "No Function Limit"
+msgstr ""
+
+#: callmapview.cpp:240
+msgid "Stop at Area"
+msgstr ""
+
+#: callmapview.cpp:246
+msgid "50 Pixels"
+msgstr "50 Pikseliä"
+
+#: callmapview.cpp:248
+msgid "100 Pixels"
+msgstr "100 Pikseliä"
+
+#: callmapview.cpp:250
+msgid "200 Pixels"
+msgstr "200 Pikseliä"
+
+#: callmapview.cpp:252
+msgid "500 Pixels"
+msgstr "500 Pikseliä"
+
+#: callmapview.cpp:266
+msgid "Half Area Limit (to %1)"
+msgstr ""
+
+#: callmapview.cpp:273
+msgid "Visualisation"
+msgstr "Visualisointi"
+
+#: callmapview.cpp:277
+msgid "Split Direction"
+msgstr ""
+
+#: callmapview.cpp:279
+msgid "Skip Incorrect Borders"
+msgstr ""
+
+#: callmapview.cpp:284
+msgid "Border Width"
+msgstr ""
+
+#: callmapview.cpp:285
+msgid "Border 0"
+msgstr ""
+
+#: callmapview.cpp:288
+msgid "Border 1"
+msgstr ""
+
+#: callmapview.cpp:290
+msgid "Border 2"
+msgstr ""
+
+#: callmapview.cpp:292
+msgid "Border 3"
+msgstr ""
+
+#: callmapview.cpp:297
+msgid "Draw Symbol Names"
+msgstr ""
+
+#: callmapview.cpp:298
+msgid "Draw Cost"
+msgstr ""
+
+#: callmapview.cpp:299
+msgid "Draw Location"
+msgstr "Piirrä sijainti"
+
+#: callmapview.cpp:300
+msgid "Draw Calls"
+msgstr "Piirrä kutsut"
+
+#: callmapview.cpp:431
+msgid "Call Map: Current is '%1'"
+msgstr ""
+
+#: callmapview.cpp:599
+msgid "(no function)"
+msgstr ""
+
+#: callmapview.cpp:741 callmapview.cpp:858
+msgid "(no call)"
+msgstr ""
+
+#: cachegrindloader.cpp:141
+msgid "Import filter for Cachegrind/Callgrind generated profile data files"
+msgstr ""
+
+#: cachegrindloader.cpp:738
+#, c-format
+msgid "Loading %1"
+msgstr "Lataa %1"
+
+#: callview.cpp:47 callview.cpp:51
+msgid "Count"
+msgstr ""
+
+#: callview.cpp:85
+msgid ""
+"List of direct Callers"
+"This list shows all functions calling the current selected one directly, "
+"together with a call count and the cost spent in the current selected function "
+"while being called from the function from the list.
"
+"An icon instead of an inclusive cost specifies that this is a call inside of "
+"a recursive cycle. An inclusive cost makes no sense here.
"
+"Selecting a function makes it the current selected one of this information "
+"panel. If there are two panels (Split mode), the function of the other panel is "
+"changed instead.
"
+msgstr ""
+
+#: callview.cpp:98
+msgid ""
+"List of direct Callees"
+"This list shows all functions called by the current selected one directly, "
+"together with a call count and the cost spent in this function while being "
+"called from the selected function.
"
+"Selecting a function makes it the current selected one of this information "
+"panel. If there are two panels (Split mode), the function of the other panel is "
+"changed instead.
"
+msgstr ""
+
+#: costtypeitem.cpp:56
+msgid "Unknown Type"
+msgstr "Tuntematon tyyppi"
+
+#: tips.cpp:3
+msgid ""
+"...that the What's This? help for every GUI widget\n"
+"in KCachegrind contains detailed usage information for this widget?\n"
+"It is highly recommended to read at least these help texts on first\n"
+"use. Request What's This? help by pressing\n"
+"Shift+F1 and clicking on the widget.
\n"
+msgstr ""
+
+#: tips.cpp:12
+msgid ""
+"...that you can get profile information at instruction level\n"
+"with Calltree when you provide the option --dump-instr=yes?\n"
+"Use the Assembler View for the instruction annotations.\n"
+"
\n"
+msgstr ""
+
+#: tips.cpp:20
+msgid ""
+"...that you can use Alt-Left/Right keys of your keyboard to go\n"
+"back/forward in the active object history ?
\n"
+msgstr ""
+
+#: tips.cpp:26
+msgid ""
+"...that you can navigate in the Callee/Caller Map View using\n"
+"arrow keys? Use Left/Right to change to siblings of the current\n"
+"item; use Up/Down to go one nesting level up/down. To select\n"
+"the current item, press Space, and to activate it, press Return.\n"
+"
\n"
+msgstr ""
+
+#: tips.cpp:35
+msgid ""
+"...that you can navigate in the Call Graph View using\n"
+"arrow keys? Use Up/Down to go one calling level up/down, alternating\n"
+"between calls and functions. Use Left/Right to change to siblings of a current\n"
+"selected call. To activate the current item, press Return.\n"
+"
\n"
+msgstr ""
+
+#: tips.cpp:44
+msgid ""
+"...that you can rapidly locate a function by entering part of its\n"
+"name (case-insensitive) into the edit line of the toolbar\n"
+"and hit return?
\n"
+msgstr ""
+
+#: tips.cpp:51
+msgid ""
+"...that you can assign custom colors to \n"
+"ELF objects/C++ Classes/Source Files for graph coloring\n"
+"in Settings->Configure KCachegrind...?
\n"
+msgstr ""
+
+#: tips.cpp:58
+msgid ""
+"...that you can see if debug info is available for a selected \n"
+"function by looking at the location label in the Info tab or\n"
+"the source listing header in the source tab?
\n"
+"There must be the name of the source file (with extension).\n"
+"If KCachegrind still doesn't show the source, make sure that you\n"
+"have added the directory of the source file to the\n"
+"Source Directories list in the configuration.\n"
+msgstr ""
+
+#: tips.cpp:69
+msgid ""
+"
...that you can configure whether KCachgrind should\n"
+"show absolute event counts or relative ones (percentage display)?
\n"
+msgstr ""
+
+#: tips.cpp:75
+msgid ""
+"...that you can configure the maximum number of items\n"
+"for all function lists in KCachegrind? Limiting the number\n"
+"of items is done to get a fast reacting GUI. The last item in\n"
+"the list will show you the number of skipped functions, together\n"
+"with a cost condition for these skipped functions.
\n"
+"To activate a function with small costs, search for it and select\n"
+"it in the flat profile. Selecting functions with small cost will\n"
+"temporarily add them to the flat profile list.
\n"
+msgstr ""
+
+#: tips.cpp:87
+msgid ""
+"...that the Coverage tab - in contrast to the Call Lists tab -\n"
+"shows all functions that are calling the selected function\n"
+"(upper part) / are called by the selected function (bottom part),\n"
+"no matter how many function are between them on the stack?
\n"
+"Examples:
\n"
+"An entry in the upper list for function foo1() with a value of 50%\n"
+"with function bar() selected means that 50% of all the cost of function\n"
+"bar() happened while called from function foo1().
\n"
+"An entry in the bottom list for function foo2() with a value of 50%\n"
+"with function bar() selected means that 50% of all the cost of function\n"
+"bar() happened while calling foo2() from bar().
\n"
+msgstr ""
+
+#: tips.cpp:102
+msgid ""
+"...that waiting for the tool tip inside of a tree map\n"
+"shows the list of names of the nested rectangles the mouse\n"
+"pointer is over?
\n"
+"Items from this list can be selected by pressing the right\n"
+"mouse button.
\n"
+msgstr ""
+
+#: tips.cpp:111
+msgid ""
+"...that you can constrain the cost counts shown to only a\n"
+"few parts of the whole trace by selecting these parts in the\n"
+"\"Trace Selection\" Dockable?
\n"
+"To generate multiple parts in a profiling run with\n"
+"cachegrind, use e.g. option --cachedumps=xxx for parts\n"
+"of a length of xxx basic blocks (A basic block is a run\n"
+"of not-branching assembler statements inside of your program\n"
+"code).
\n"
+msgstr ""
+
+#: configdlg.cpp:60
+msgid "Source Files"
+msgstr "Lähdetiedostot"
+
+#: configdlg.cpp:61
+msgid "C++ Classes"
+msgstr "C++ Luokat"
+
+#: configdlg.cpp:62
+msgid "Function (no Grouping)"
+msgstr ""
+
+#: configdlg.cpp:157 configdlg.cpp:350 configdlg.cpp:371
+msgid "(always)"
+msgstr "(aina)"
+
+#: configdlg.cpp:210
+msgid "KCachegrind Configuration"
+msgstr "KCachegrind Aseetukset"
+
+#: configdlg.cpp:211
+msgid ""
+"The Maximum Number of List Items should be below 500.The previous set value "
+"(%1) will still be used."
+msgstr ""
+
+#: configdlg.cpp:384
+msgid "Choose Source Folder"
+msgstr "Valitse lähdekansio"
+
+#: partgraph.cpp:167
+#, c-format
+msgid "Profile Part %1"
+msgstr ""
+
+#: partgraph.cpp:226
+msgid "(no trace)"
+msgstr ""
+
+#: partgraph.cpp:229
+msgid "(no part)"
+msgstr ""
+
+#: partview.cpp:51
+msgid "Comment"
+msgstr "Kommentti"
+
+#: partview.cpp:73
+msgid ""
+"Trace Part List"
+"This list shows all trace parts of the loaded trace. For each part, the "
+"self/inclusive cost of the current selected function, spent in the part, is "
+"shown; percentage costs are always relative to the total cost "
+"of the part (not to the whole trace as in the Trace Part Overview). Also "
+"shown are the calls happening to/from the current function inside of the trace "
+"part.
"
+"By choosing one or more trace parts from the list, the costs shown all over "
+"KCachegrind will only be the ones spent in the selected part(s). If no list "
+"selection is shown, in fact all trace parts are selected implicitly.
"
+"This is a multi-selection list. You can select ranges by dragging the mouse "
+"or use SHIFT/CTRL modifiers. Selection/Deselection of trace parts can also be "
+"done by using the Trace Part Overview Dockable. This one also supports multiple "
+"selection.
"
+"Note that the list is hidden if only one trace part is loaded.
"
+msgstr ""
+
+#: partview.cpp:106
+msgid "Select '%1'"
+msgstr "Valitse '%1'"
+
+#: partview.cpp:107
+msgid "Hide '%1'"
+msgstr "Piilota '%1'"
+
+#: partview.cpp:111
+msgid "Hide Selected"
+msgstr "Piilota valitut"
+
+#: partview.cpp:112
+msgid "Show All"
+msgstr "Näytä kaikki"
diff --git a/tde-i18n-fi/messages/tdesdk/kfile_cpp.po b/tde-i18n-fi/messages/tdesdk/kfile_cpp.po
new file mode 100644
index 00000000000..dc7f788079f
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kfile_cpp.po
@@ -0,0 +1,51 @@
+# translation of kfile_cpp.po to finnish
+# translation of kfile_cpp.po to Finnish
+# translation of kfile_cpp.po to
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+# Teemu Rytilahti , 2003.
+# Ilpo Kantonen , 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: kfile_cpp\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2005-07-21 11:33+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish >"
+"\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+
+#: kfile_cpp.cpp:48
+msgid "General"
+msgstr "Yleiset"
+
+#: kfile_cpp.cpp:51
+msgid "Lines"
+msgstr "Rivejä"
+
+#: kfile_cpp.cpp:53
+msgid "Code"
+msgstr "Koodi"
+
+#: kfile_cpp.cpp:55
+msgid "Comment"
+msgstr "Kommentti"
+
+#: kfile_cpp.cpp:57
+msgid "Blank"
+msgstr "Tyhjä"
+
+#: kfile_cpp.cpp:59
+msgid "Strings"
+msgstr "Merkkijonot"
+
+#: kfile_cpp.cpp:61
+msgid "i18n Strings"
+msgstr "i18n-merkkijonot"
+
+#: kfile_cpp.cpp:63
+msgid "Included Files"
+msgstr "Sisällytetyt tiedostot"
diff --git a/tde-i18n-fi/messages/tdesdk/kfile_diff.po b/tde-i18n-fi/messages/tdesdk/kfile_diff.po
new file mode 100644
index 00000000000..a68015214e3
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kfile_diff.po
@@ -0,0 +1,108 @@
+# translation of kfile_diff.po to finnish
+# translation of kfile_diff.po to Finnish
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Teemu Rytilahti , 2003.
+# Juha Kari , 2004.
+# Ilpo Kantonen , 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: kfile_diff\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2005-07-21 11:32+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish >"
+"\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: kfile_diff.cpp:56
+msgid "General"
+msgstr "Yleiset"
+
+#: kfile_diff.cpp:58
+msgid "First File"
+msgstr "Ensimmäinen tiedosto"
+
+#: kfile_diff.cpp:59
+msgid "Format"
+msgstr "Muoto"
+
+#: kfile_diff.cpp:60
+msgid "Diff Program"
+msgstr "Diff-ohjelma"
+
+#: kfile_diff.cpp:61
+msgid "Hunks"
+msgstr "Eroavia viipaleita"
+
+#: kfile_diff.cpp:62
+msgid "Statistics"
+msgstr "Tilastot"
+
+#: kfile_diff.cpp:63
+msgid "Insertions"
+msgstr "Lisäykset"
+
+#: kfile_diff.cpp:64
+msgid "Changes"
+msgstr "Muutokset"
+
+#: kfile_diff.cpp:65
+msgid "Deletions"
+msgstr "Poistot"
+
+#: kfile_diff.cpp:280
+msgid "Context"
+msgstr "Konteksti"
+
+#: kfile_diff.cpp:283
+msgid "Ed"
+msgstr "Ed-komentotiedosto"
+
+#: kfile_diff.cpp:286
+msgid "Normal"
+msgstr "Normaali"
+
+#: kfile_diff.cpp:289
+msgid "RCS"
+msgstr "RCS"
+
+#: kfile_diff.cpp:292
+msgid "Unified"
+msgstr "Diff-yhtenäismuoto"
+
+#: kfile_diff.cpp:295
+msgid "Not Available (file empty)"
+msgstr "Ei saatavilla (tiedosto tyhjä)"
+
+#: kfile_diff.cpp:298 kfile_diff.cpp:328
+msgid "Unknown"
+msgstr "Tuntematon"
+
+#: kfile_diff.cpp:301
+msgid "Side by Side"
+msgstr "Rinnakkain"
+
+#: kfile_diff.cpp:313
+msgid "CVSDiff"
+msgstr "CVSDiff"
+
+#: kfile_diff.cpp:316
+msgid "Diff"
+msgstr "Diff"
+
+#: kfile_diff.cpp:319
+msgid "Diff3"
+msgstr "Diff3"
+
+#: kfile_diff.cpp:322
+msgid "Perforce"
+msgstr "Perforce"
+
+#: kfile_diff.cpp:325
+msgid "SubVersion"
+msgstr "SubVersion"
diff --git a/tde-i18n-fi/messages/tdesdk/kfile_po.po b/tde-i18n-fi/messages/tdesdk/kfile_po.po
new file mode 100644
index 00000000000..8e096e21332
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kfile_po.po
@@ -0,0 +1,44 @@
+# translation of kfile_po.po to Finnish
+# translation of kfile_po.po to
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Teemu Rytilahti , 2003
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: kfile_po\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2003-03-15 02:56+0200\n"
+"Last-Translator: Teemu Rytilahti \n"
+"Language-Team: Finnish\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0\n"
+
+#: kfile_po.cpp:50
+msgid "Catalog Information"
+msgstr "Luettelotietoja"
+
+#: kfile_po.cpp:53
+msgid "Total Messages"
+msgstr "Viestejä yhteensä"
+
+#: kfile_po.cpp:54
+msgid "Fuzzy Messages"
+msgstr "Sumeita viestejä"
+
+#: kfile_po.cpp:55
+msgid "Untranslated Messages"
+msgstr "Kääntämättömiä viestejä"
+
+#: kfile_po.cpp:56
+msgid "Last Translator"
+msgstr "Viimeisin kääntäjä"
+
+#: kfile_po.cpp:57
+msgid "Language Team"
+msgstr "Käännösryhmä"
+
+#: kfile_po.cpp:58
+msgid "Revision"
+msgstr "Edellinen muutos"
diff --git a/tde-i18n-fi/messages/tdesdk/kfile_ts.po b/tde-i18n-fi/messages/tdesdk/kfile_ts.po
new file mode 100644
index 00000000000..463f9bd82a4
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kfile_ts.po
@@ -0,0 +1,33 @@
+# translation of kfile_ts.po to
+# Ilpo Kantonen , 2004.
+msgid ""
+msgstr ""
+"Project-Id-Version: kfile_ts\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2004-11-12 08:39+0200\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+
+#: kfile_ts.cpp:43
+msgid "General"
+msgstr "Yleiset"
+
+#: kfile_ts.cpp:46
+msgid "Messages"
+msgstr "Viestit"
+
+#: kfile_ts.cpp:48
+msgid "Translated"
+msgstr "Käännetyt"
+
+#: kfile_ts.cpp:50
+msgid "Untranslated"
+msgstr "Kääntämättömät"
+
+#: kfile_ts.cpp:52
+msgid "Obsolete"
+msgstr "Vanhentuneet"
diff --git a/tde-i18n-fi/messages/tdesdk/kio_svn.po b/tde-i18n-fi/messages/tdesdk/kio_svn.po
new file mode 100644
index 00000000000..7efa2c1d8a3
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kio_svn.po
@@ -0,0 +1,186 @@
+# translation of kio_svn.po to Finnish
+# translation of kio_svn.po to finnish
+# translation of kio_svn.po to
+# Ilpo Kantonen , 2005.
+# Kim Enkovaara , 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: kio_svn\n"
+"POT-Creation-Date: 2006-02-18 03:52+0100\n"
+"PO-Revision-Date: 2005-07-23 18:42+0300\n"
+"Last-Translator: Kim Enkovaara \n"
+"Language-Team: Finnish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+
+#: svn.cpp:235
+msgid "Looking for %1..."
+msgstr "Etsii %1..."
+
+#: svn.cpp:1088
+msgid "Nothing to commit."
+msgstr "Mitään ei ole kommitoitu."
+
+#: svn.cpp:1090
+#, c-format
+msgid "Committed revision %1."
+msgstr "Kommitoitu versio %1."
+
+#: svn.cpp:1352
+#, c-format
+msgid "A (bin) %1"
+msgstr "A (bin) %1"
+
+#: svn.cpp:1354 svn.cpp:1386
+#, c-format
+msgid "A %1"
+msgstr "A %1"
+
+#: svn.cpp:1360 svn.cpp:1382
+#, c-format
+msgid "D %1"
+msgstr "D %1"
+
+#: svn.cpp:1363
+#, c-format
+msgid "Restored %1."
+msgstr "Palautettu %1."
+
+#: svn.cpp:1366
+#, c-format
+msgid "Reverted %1."
+msgstr "Palautettu %1."
+
+#: svn.cpp:1369
+msgid ""
+"Failed to revert %1.\n"
+"Try updating instead."
+msgstr ""
+"Kohteen %1 palautus epäonnistui.\n"
+"Yritä viedä sensijaan."
+
+#: svn.cpp:1372
+#, c-format
+msgid "Resolved conflicted state of %1."
+msgstr "Ratkaistu ristiriitainen tila %1."
+
+#: svn.cpp:1376
+#, c-format
+msgid "Skipped missing target %1."
+msgstr "Ohitettiin puuttuva kohde %1."
+
+#: svn.cpp:1378
+#, c-format
+msgid "Skipped %1."
+msgstr "Ohitettiin %1."
+
+#: svn.cpp:1431
+#, c-format
+msgid "Exported external at revision %1."
+msgstr "Viety ulkoinen versio %1."
+
+#: svn.cpp:1433
+#, c-format
+msgid "Exported revision %1."
+msgstr "Viety versio %1."
+
+#: svn.cpp:1436
+#, c-format
+msgid "Checked out external at revision %1."
+msgstr "Haettiin ylimääräinen versio %1."
+
+#: svn.cpp:1438
+#, c-format
+msgid "Checked out revision %1."
+msgstr "Haettiin versio %1."
+
+#: svn.cpp:1442
+#, c-format
+msgid "Updated external to revision %1."
+msgstr "Päivitetty lisä versioon %1."
+
+#: svn.cpp:1444
+#, c-format
+msgid "Updated to revision %1."
+msgstr "Päivitetty versioon %1."
+
+#: svn.cpp:1447
+#, c-format
+msgid "External at revision %1."
+msgstr "Ulkoinen versiossa %1."
+
+#: svn.cpp:1449
+#, c-format
+msgid "At revision %1."
+msgstr "Versiossa %1."
+
+#: svn.cpp:1455
+msgid "External export complete."
+msgstr "Ulkoinen vienti valmis."
+
+#: svn.cpp:1457
+msgid "Export complete."
+msgstr "Vienti valmis."
+
+#: svn.cpp:1460
+msgid "External checkout complete."
+msgstr "Ulkoinen haku valmis."
+
+#: svn.cpp:1462
+msgid "Checkout complete."
+msgstr "Haku valmis."
+
+#: svn.cpp:1465
+msgid "External update complete."
+msgstr "Ulkoinen päivitys valmis."
+
+#: svn.cpp:1467
+msgid "Update complete."
+msgstr "Päivitys valmis."
+
+#: svn.cpp:1477
+#, c-format
+msgid "Fetching external item into %1."
+msgstr "Hakee ulkoista osaa kohteeseen %1."
+
+#: svn.cpp:1481
+#, c-format
+msgid "Status against revision: %1."
+msgstr "Version tila: %1."
+
+#: svn.cpp:1484
+#, c-format
+msgid "Performing status on external item at %1."
+msgstr "Tehdään tila ulkoiselle osalle %1."
+
+#: svn.cpp:1487
+#, c-format
+msgid "Sending %1"
+msgstr "Lähettää %1"
+
+#: svn.cpp:1491
+#, c-format
+msgid "Adding (bin) %1."
+msgstr "Lisää (bin) %1."
+
+#: svn.cpp:1493
+#, c-format
+msgid "Adding %1."
+msgstr "Lisää %1."
+
+#: svn.cpp:1497
+#, c-format
+msgid "Deleting %1."
+msgstr "Poistaa %1."
+
+#: svn.cpp:1500
+#, c-format
+msgid "Replacing %1."
+msgstr "Korvaa %1."
+
+#: svn.cpp:1505
+msgid "Transmitting file data "
+msgstr "Siirtää tietoa"
diff --git a/tde-i18n-fi/messages/tdesdk/kompare.po b/tde-i18n-fi/messages/tdesdk/kompare.po
new file mode 100644
index 00000000000..a8a1cfc9693
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kompare.po
@@ -0,0 +1,1009 @@
+# translation of kompare.po to finnish
+# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+#
+# Teemu Rytilahti , 2003.
+# Juha Kari , 2004.
+# Ilpo Kantonen , 2005, 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: kompare\n"
+"POT-Creation-Date: 2007-12-20 01:16+0100\n"
+"PO-Revision-Date: 2006-09-15 11:51+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: komparepart/kompareprefdlg.cpp:33
+msgid "Preferences"
+msgstr "Asetukset"
+
+#: komparepart/kompareprefdlg.cpp:39
+msgid "View Settings"
+msgstr "Diff-asetukset"
+
+#: komparepart/kompareprefdlg.cpp:43 kompareurldialog.cpp:47
+msgid "Diff"
+msgstr "Diff"
+
+#: komparepart/kompareprefdlg.cpp:43
+msgid "Diff Settings"
+msgstr "Diff-asetukset"
+
+#: komparepart/kompare_part.cpp:165
+msgid "Save &All"
+msgstr "Tallenna &kaikki"
+
+#: komparepart/kompare_part.cpp:168
+msgid "Save .&diff..."
+msgstr "Tallenna .&diff"
+
+#: komparepart/kompare_part.cpp:171
+msgid "Swap Source with Destination"
+msgstr "Vaihda lähdetiedosto kohdetiedostoksi"
+
+#: komparepart/kompare_part.cpp:174
+msgid "Show Statistics"
+msgstr "Näytä tilastot"
+
+#: komparepart/kompare_part.cpp:269
+msgid "The URL %1 cannot be downloaded."
+msgstr "URLia %1 ei voida ladata."
+
+#: komparepart/kompare_part.cpp:281
+msgid "The URL %1 does not exist on your system."
+msgstr "URLia %1 ei ole järjestelmässäsi."
+
+#: komparepart/kompare_part.cpp:425
+msgid "Diff Options"
+msgstr "Diff-asetukset"
+
+#: komparepart/kompare_part.cpp:443
+msgid "*.diff *.dif *.patch|Patch Files"
+msgstr "*.diff *.dif *.patch|Korjaustiedostot"
+
+#: komparepart/kompare_part.cpp:443
+msgid "Save .diff"
+msgstr "Tallenna .diff"
+
+#: komparepart/kompare_part.cpp:446
+msgid "The file exists or is write-protected; do you want to overwrite it?"
+msgstr ""
+"Tiedosto on jo olemassa tai se on kirjoitussuojattu; haluatko ylikirjoittaa "
+"sen?"
+
+#: komparepart/kompare_part.cpp:446
+msgid "File Exists"
+msgstr "Tiedosto on jo olemassa"
+
+#: komparepart/kompare_part.cpp:446
+msgid "Overwrite"
+msgstr "Korvaa"
+
+#: komparepart/kompare_part.cpp:446
+msgid "Do Not Overwrite"
+msgstr "Älä korvaa"
+
+#: komparepart/kompare_part.cpp:481
+msgid "KomparePart"
+msgstr "KomparePart"
+
+#: komparepart/kompare_part.cpp:493
+msgid "Running diff..."
+msgstr "Ajetaan diff-ohjelmaa..."
+
+#: komparepart/kompare_part.cpp:496
+msgid "Parsing diff output..."
+msgstr "Jäsennetään diff-ohjelman tulosteet..."
+
+#: komparepart/kompare_part.cpp:545
+msgid "Comparing file %1 with file %2"
+msgstr "Verrataan tiedostoa %1 tiedostoon %2"
+
+#: komparepart/kompare_part.cpp:550
+msgid "Comparing files in %1 with files in %2"
+msgstr "Verrataan kansion %1 tiedostoja kansion %2 tiedostoihin"
+
+#: komparepart/kompare_part.cpp:555
+#, c-format
+msgid "Viewing diff output from %1"
+msgstr "Näytetään diff-ohjelman tulosteet tiedostosta %1"
+
+#: komparepart/kompare_part.cpp:558
+msgid "Blending diff output from %1 into file %2"
+msgstr "Yhdistetään diff-ohjelman tulosteet tiedostosta %1 tiedostoon %2"
+
+#: komparepart/kompare_part.cpp:563
+msgid "Blending diff output from %1 into folder %2"
+msgstr "Yhdistetään diff-ohjelman tulosteet kansiosta %1 kansioon %2"
+
+#: komparepart/kompare_part.cpp:586 komparepart/kompare_part.cpp:709
+msgid ""
+"You have made changes to the destination file(s).\n"
+"Would you like to save them?"
+msgstr ""
+"Kohdetiedostoon/tiedostoihin on tehty muutoksia.\n"
+"Tallennetaanko muutokset?"
+
+#: komparepart/kompare_part.cpp:588 komparepart/kompare_part.cpp:711
+msgid "Save Changes?"
+msgstr "Tallennetaanko muutokset?"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 276
+#: komparepart/kompare_part.cpp:635 libdialogpages/diffpage.cpp:244 rc.cpp:75
+#, no-c-format
+msgid "Unified"
+msgstr "Diff-yhtenäismuoto"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 244
+#: komparepart/kompare_part.cpp:638 libdialogpages/diffpage.cpp:238 rc.cpp:63
+#, no-c-format
+msgid "Context"
+msgstr "Konteksti"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 268
+#: komparepart/kompare_part.cpp:641 libdialogpages/diffpage.cpp:242 rc.cpp:72
+#, no-c-format
+msgid "RCS"
+msgstr "RCS"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 252
+#: komparepart/kompare_part.cpp:644 libdialogpages/diffpage.cpp:239 rc.cpp:66
+#, no-c-format
+msgid "Ed"
+msgstr "Ed-komentotiedosto"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 260
+#: komparepart/kompare_part.cpp:647 libdialogpages/diffpage.cpp:241 rc.cpp:69
+#, no-c-format
+msgid "Normal"
+msgstr "Normaali"
+
+#: komparenavtreepart/komparenavtreepart.cpp:531
+#: komparepart/kompare_part.cpp:651
+msgid "Unknown"
+msgstr "Tuntematon"
+
+#: komparepart/kompare_part.cpp:667
+msgid ""
+"No diff file, or no 2 files have been diffed. Therefore no stats are available."
+msgstr ""
+"Tilastot eivät ole käytettävissä, koska diff-tiedostoa ei ole annettu tai kahta "
+"tiedostoa ei ole verrattu."
+
+#: komparepart/kompare_part.cpp:669 komparepart/kompare_part.cpp:683
+#: komparepart/kompare_part.cpp:698
+msgid "Diff Statistics"
+msgstr "Diff-tilastot"
+
+#: komparepart/kompare_part.cpp:673
+msgid ""
+"Statistics:\n"
+"\n"
+"Old file: %1\n"
+"New file: %2\n"
+"\n"
+"Format: %3\n"
+"Number of hunks: %4\n"
+"Number of differences: %5"
+msgstr ""
+"Tilastot:\n"
+"\n"
+"Vanha tiedosto: %1\n"
+"Uusi tiedosto: %2\n"
+"\n"
+"Muoto: %3\n"
+"Palojen määrä: %4\n"
+"Eroavuuksien määrä: %5"
+
+#: komparepart/kompare_part.cpp:686
+msgid ""
+"Statistics:\n"
+"\n"
+"Number of files in diff file: %1\n"
+"Format: %2\n"
+"\n"
+"Current old file: %3\n"
+"Current new file: %4\n"
+"\n"
+"Number of hunks: %5\n"
+"Number of differences: %6"
+msgstr ""
+"Tilastot:\n"
+"\n"
+"Tiedostojen määrä diff-tiedostossa: %1\n"
+"Muoto: %2\n"
+"\n"
+"Nykyinen vanha tiedosto: %3\n"
+"Nykyinen uusi tiedosto: %4\n"
+"\n"
+"Palojen määrä: %5\n"
+"Eroavuuksien määrä: %6"
+
+#: libdialogpages/viewpage.cpp:51
+msgid "Colors"
+msgstr "Rivien värit"
+
+#: libdialogpages/viewpage.cpp:56
+msgid "Removed color:"
+msgstr "Poistetun rivin väri:"
+
+#: libdialogpages/viewpage.cpp:61
+msgid "Changed color:"
+msgstr "Muutetun rivin väri:"
+
+#: libdialogpages/viewpage.cpp:66
+msgid "Added color:"
+msgstr "Lisätyn rivin väri:"
+
+#: libdialogpages/viewpage.cpp:71
+msgid "Applied color:"
+msgstr "Käyttöön otetun rivin väri:"
+
+#: libdialogpages/viewpage.cpp:76
+msgid "Mouse Wheel"
+msgstr "Hiiren rulla"
+
+#: libdialogpages/viewpage.cpp:80
+msgid "Number of lines:"
+msgstr "Vieritettävien rivien määrä:"
+
+#: libdialogpages/viewpage.cpp:86
+msgid "Tabs to Spaces"
+msgstr "Sarkainmerkkien muuttaminen välilyönneiksi"
+
+#: libdialogpages/viewpage.cpp:90
+msgid "Number of spaces to convert a tab character to:"
+msgstr "Välilyöntien määrä yhtä sarkainmerkkiä kohden:"
+
+#: libdialogpages/viewpage.cpp:97
+msgid "A&ppearance"
+msgstr "&Ulkoasu"
+
+#: libdialogpages/viewpage.cpp:104
+msgid "Text Font"
+msgstr "Tekstin kirjasin"
+
+#: libdialogpages/viewpage.cpp:108
+msgid "Font:"
+msgstr "Kirjasin:"
+
+#: libdialogpages/viewpage.cpp:112
+msgid "Size:"
+msgstr "Koko:"
+
+#: libdialogpages/diffpage.cpp:211
+msgid "Diff Program"
+msgstr "Diff-ohjelma"
+
+#: libdialogpages/diffpage.cpp:216
+msgid ""
+"You can select a different diff program here. On Solaris the standard diff "
+"program does not support all the options that the GNU version does. This way "
+"you can select that version."
+msgstr ""
+"Voit valita tässä eri diff-ohjelman. Solaris-järjestelmissä standardi "
+"diff-ohjelma ei tue kaikkia GNU-version ominaisuuksia. Tällä voit valita sen "
+"version."
+
+#: libdialogpages/diffpage.cpp:221
+msgid "&Diff"
+msgstr "&Diff"
+
+#: libdialogpages/diffpage.cpp:232
+msgid "Output Format"
+msgstr "Tulostemuoto"
+
+#: libdialogpages/diffpage.cpp:233
+msgid ""
+"Select the format of the output generated by diff. Unified is the one that is "
+"used most frequently because it is very readable. The KDE developers like this "
+"format the best so use it for sending patches."
+msgstr ""
+"Valitse diffin luoman tulosteen muoto. Yhtenäistetty on useimmin käytetty, "
+"koska se on erittäin luettava. KDE-kehittäjät pitävät tätä muotoa parhaana. "
+"Käytä sitä lähettäessäsi paikkoja (patch)."
+
+#: libdialogpages/diffpage.cpp:247
+msgid "Lines of Context"
+msgstr "Kontekstirivit"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 312
+#: libdialogpages/diffpage.cpp:251 rc.cpp:81
+#, no-c-format
+msgid "Number of context lines:"
+msgstr "Kontekstirivien määrä:"
+
+#: libdialogpages/diffpage.cpp:253
+msgid ""
+"The number of context lines is normally 2 or 3. This makes the diff readable "
+"and applicable in most cases. More than 3 lines will only bloat the diff "
+"unnecessarily."
+msgstr ""
+"Sisältörivien määrä on normaalisti 2 tai 3. Tämä tekee diffin luettavaksi ja "
+"sopivaksi useimmissa tapauksissa. Enemmän kuin 3 riviä pöhöttää diffiä "
+"tarpeettomasti."
+
+#: libdialogpages/diffpage.cpp:259
+msgid "&Format"
+msgstr "&Muoto"
+
+#: libdialogpages/diffpage.cpp:270
+msgid "General"
+msgstr "Yleiset"
+
+#: libdialogpages/diffpage.cpp:274
+msgid "&Look for smaller changes"
+msgstr "&Etsi pienempiä muutoksia"
+
+#: libdialogpages/diffpage.cpp:275
+msgid "This corresponds to the -d diff option."
+msgstr "Tämä vastaa diffin -d valintaa."
+
+#: libdialogpages/diffpage.cpp:276
+msgid "O&ptimize for large files"
+msgstr "O&ptimoi suuria tiedostoja varten"
+
+#: libdialogpages/diffpage.cpp:277
+msgid "This corresponds to the -H diff option."
+msgstr "Tämä vastaa diffin -H vipua."
+
+#: libdialogpages/diffpage.cpp:278
+msgid "&Ignore changes in case"
+msgstr "Älä vertaa merkk&ikokoa"
+
+#: libdialogpages/diffpage.cpp:279
+msgid "This corresponds to the -i diff option."
+msgstr "Tämä vastaa diffin -i vipua."
+
+#: libdialogpages/diffpage.cpp:284
+msgid "Ignore regexp:"
+msgstr "Älä käytä säännöllistä ilmausta:"
+
+#: libdialogpages/diffpage.cpp:285
+msgid "This option corresponds to the -I diff option."
+msgstr "Tämä vastaa diffin -I vipua."
+
+#: libdialogpages/diffpage.cpp:288
+msgid ""
+"Add the regular expression here that you want to use\n"
+"to ignore lines that match it."
+msgstr ""
+"Lisää tähän säännöllinen lauseke, jota haluat käyttää\n"
+"jättäessäsi huomiotta lausekkeen sisältämät rivit"
+
+#: libdialogpages/diffpage.cpp:294
+msgid "&Edit..."
+msgstr "&Muokkaa..."
+
+#: libdialogpages/diffpage.cpp:295
+msgid ""
+"Clicking this will open a regular expression dialog where\n"
+"you can graphically create regular expressions."
+msgstr ""
+"Napsauttamalla tätä avautuu säännöllisen lausekkeen keskusteluikkuna,\n"
+"jossa voit luoda graafisesti säännöllisen lausekkeen."
+
+#: libdialogpages/diffpage.cpp:300
+msgid "Whitespace"
+msgstr "Tyhjeet"
+
+#: libdialogpages/diffpage.cpp:304
+msgid "E&xpand tabs to spaces in output"
+msgstr "Muuta tulosteen sarkainm&erkit välilyönneiksi"
+
+#: libdialogpages/diffpage.cpp:305
+msgid "This option corresponds to the -t diff option."
+msgstr "Tämä valinta vastaa diffin -t vipua."
+
+#: libdialogpages/diffpage.cpp:306
+msgid "I&gnore added or removed empty lines"
+msgstr "Älä huomioi lisättyjä tai poistettuja tyhjiä rivejä"
+
+#: libdialogpages/diffpage.cpp:307
+msgid "This option corresponds to the -B diff option."
+msgstr "Tämä valinta vastaa diffin -B vipua."
+
+#: libdialogpages/diffpage.cpp:308
+msgid "Ig&nore changes in the amount of whitespace"
+msgstr "Älä huomioi eroja tyhjeiden määrässä"
+
+#: libdialogpages/diffpage.cpp:309
+msgid "This option corresponds to the -b diff option."
+msgstr "Tämä valinta vastaa diffin -b vipua."
+
+#: libdialogpages/diffpage.cpp:310
+msgid "Ign&ore all whitespace"
+msgstr "Älä hu&omioi tyhjeitä"
+
+#: libdialogpages/diffpage.cpp:311
+msgid "This option corresponds to the -w diff option."
+msgstr "Tämä valinta vastaa diffin -w vipua."
+
+#: libdialogpages/diffpage.cpp:312
+msgid "Igno&re changes due to tab expansion"
+msgstr "Älä huomioi muutoksia tabulaattorien laajentamisessa"
+
+#: libdialogpages/diffpage.cpp:313
+msgid "This option corresponds to the -E diff option."
+msgstr "Tämä valinta vastaa diffin -E vipua."
+
+#: libdialogpages/diffpage.cpp:318
+msgid "O&ptions"
+msgstr "&Asetukset"
+
+#: libdialogpages/diffpage.cpp:328
+msgid "File Pattern to Exclude"
+msgstr "Poisjätettävät tiedostomallit"
+
+#: libdialogpages/diffpage.cpp:330
+msgid ""
+"If this is checked you can enter a shell pattern in the text box on the right "
+"or select entries from the list."
+msgstr ""
+"Jos tämä on valittu, voit antaa shell-mallin oikealla olevassa laatikossa tai "
+"valita kohteita luettelosta."
+
+#: libdialogpages/diffpage.cpp:332
+msgid ""
+"Here you can enter or remove a shell pattern or select one or more entries from "
+"the list."
+msgstr ""
+"TÄssä voit antaa tai poistaa shell-malleja tai valita yhden tai useamman "
+"kohteen luettelosta."
+
+#: libdialogpages/diffpage.cpp:338
+msgid "File with Filenames to Exclude"
+msgstr "Poissuljettavan tiedosto tiedostonimineen"
+
+#: libdialogpages/diffpage.cpp:340
+msgid ""
+"If this is checked you can enter a filename in the combo box on the right."
+msgstr ""
+"Jos tämä on valittuna, voit antaa tiedostonimen yhdistelmälaatikossa oikealla."
+
+#: libdialogpages/diffpage.cpp:342
+msgid ""
+"Here you can enter the URL of a file with shell patterns to ignore during the "
+"comparison of the folders."
+msgstr ""
+"Tässä voit antaa kansion poissuljettavan URLin tai tiedoston shell-mallilla "
+"vertailun aikana."
+
+#: libdialogpages/diffpage.cpp:344
+msgid ""
+"Any file you select in the dialog that pops up when you click it will be put in "
+"the dialog to the left of this button."
+msgstr ""
+"Keskusteluikkunan jokainen tiedosto, jonka valitset napsauttamalla asetetaan "
+"keskusteluikkunaan vasemmalle tästä napista."
+
+#: libdialogpages/diffpage.cpp:352
+msgid "&Exclude"
+msgstr "&Poissulje"
+
+#: libdialogpages/filespage.cpp:53
+msgid "Encoding"
+msgstr "Koodaus"
+
+#: libdialogpages/filespage.cpp:64
+msgid "&Files"
+msgstr "&Tiedostot"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Teemu Rytilahti,Juha J. Kari"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "teemu.rytilahti@d5k.net,juha.j.kari@uta.fi"
+
+#: main.cpp:33
+msgid ""
+"A program to view the differences between files and optionally generate a diff"
+msgstr ""
+"Ohjelma tiedostojen välisten erojen tarkastelemiseen ja diff-tiedoston "
+"luomiseen."
+
+#: main.cpp:39
+msgid "This will compare URL1 with URL2"
+msgstr "Tämä vertaa URL1:ä URL2:een."
+
+#: main.cpp:40
+msgid ""
+"This will open URL1 and expect it to be diff output. URL1 can also be a '-' and "
+"then it will read from standard input. Can be used for instance for cvs diff | "
+"kompare -o -. Kompare will do a check to see if it can find the original "
+"file(s) and then blend the original file(s) into the diffoutput and show that "
+"in the viewer. -n disables the check."
+msgstr ""
+"Tämä avaa URL1:n odottaen diff-tulostetta. URL1 voi olla myös '-', jolloin se "
+"luetaan standardisyötevirrasta. Voidaan käyttää cvs:lle diff | kompare -o -. "
+"Kompare tarkastaa, löytyvätkö alkuperäiset tiedostot ja yhdistää ne "
+"diff-tulosteeseen sekä näyttää lopputuloksen. -n poistaa tarkastuksen käytöstä."
+
+#: main.cpp:41
+msgid ""
+"This will blend URL2 into URL1, URL2 is expected to be diff output and URL1 the "
+"file or folder that the diffoutput needs to be blended into. "
+msgstr ""
+"Tämä yhdistää URL2:n URL1:een, URL2:n oletetaan olevan diff-tuloste ja URL1:n "
+"tiedosto tai kansio, johon diff-tuloste yhdistetään."
+
+#: main.cpp:42
+msgid ""
+"Disables the check for automatically finding the original file(s) when using "
+"'-' as URL with the -o option."
+msgstr ""
+"Poistaa käytöstä tarkastuksen automaattiselle alkuperäisten tiedostojen "
+"etsinnälle käytettäessä parametria '-' URL:na yhdessä -o parametrin kanssa."
+
+#: main.cpp:43
+msgid ""
+"Use this to specify the encoding when calling it from the command line. It will "
+"default to the local encoding if not specified."
+msgstr ""
+"Käytä tätä määritelläksesi koodauksen kun sitä kutsutaan komentoriviltä. Se on "
+"oletuksena paikallinen koodaus, jos ei ole määritelty."
+
+#: main.cpp:52
+msgid "Kompare"
+msgstr "Kompare"
+
+#: main.cpp:54
+msgid "(c) 2001-2004, John Firebaugh and Otto Bruggeman"
+msgstr "(c) 2001-2004, John Firebaugh ja Otto Bruggeman"
+
+#: main.cpp:55 main.cpp:56
+msgid "Author"
+msgstr "Tekijä"
+
+#: main.cpp:57
+msgid "Kompare icon artist"
+msgstr "Komparen kuvaketaiteilija"
+
+#: main.cpp:58
+msgid "A lot of good advice"
+msgstr "Runsaasti hyviä neuvoja"
+
+#: main.cpp:59
+msgid "Cervisia diff viewer"
+msgstr "Cervisia diff-katseluohjelma"
+
+#: kompare_shell.cpp:397 main.cpp:185
+msgid "Compare Files or Folders"
+msgstr "Vertaa tiedostoja tai kansioita"
+
+#: kompare_shell.cpp:398 main.cpp:186
+msgid "Source"
+msgstr "Lähde"
+
+#: kompare_shell.cpp:399 main.cpp:187
+msgid "Destination"
+msgstr "Kohde"
+
+#: kompare_shell.cpp:401 main.cpp:189
+msgid "Compare"
+msgstr "Vertaa"
+
+#: main.cpp:189
+msgid "Compare these files or folder"
+msgstr "Vertaa näitä tiedostoja tai kansioita"
+
+#: kompare_shell.cpp:401 main.cpp:189
+msgid ""
+"If you have entered 2 filenames or 2 folders in the fields in this dialog then "
+"this button will be enabled and pressing it will start a comparison of the "
+"entered files or folders. "
+msgstr ""
+"Painike on käytettävissä, kun kaksi tiedosto- tai kansionimeä on syötetty tämän "
+"valintaikkunan kenttiin. Painaminen aloittaa annettujen tiedostojen tai "
+"kansioiden vertaamisen."
+
+#: kompareurldialog.cpp:41
+msgid "Here you can enter the files you want to compare."
+msgstr "Tässä voit antaa tiedostot, joita haluat vertailla."
+
+#: kompareurldialog.cpp:47
+msgid "Here you can change the options for comparing the files."
+msgstr "Tässä voit muuttaa tiedostojen vertailun valintoja."
+
+#: kompareurldialog.cpp:53
+msgid "Here you can change the options for the view."
+msgstr "Tässä voit muuttaa näytön asetuksia."
+
+#: komparenavtreepart/komparenavtreepart.cpp:61
+msgid "Source Folder"
+msgstr "Lähdekansio"
+
+#: komparenavtreepart/komparenavtreepart.cpp:66
+msgid "Destination Folder"
+msgstr "Kohdekansio"
+
+#: komparenavtreepart/komparenavtreepart.cpp:71
+msgid "Source File"
+msgstr "Lähdetiedosto"
+
+#: komparenavtreepart/komparenavtreepart.cpp:72
+msgid "Destination File"
+msgstr "Kohdetiedosto"
+
+#: komparenavtreepart/komparenavtreepart.cpp:78
+msgid "Source Line"
+msgstr "Lähderivi"
+
+#: komparenavtreepart/komparenavtreepart.cpp:79
+msgid "Destination Line"
+msgstr "Kohderivi"
+
+#: komparenavtreepart/komparenavtreepart.cpp:80
+msgid "Difference"
+msgstr "Erot"
+
+#: komparenavtreepart/komparenavtreepart.cpp:426
+#, c-format
+msgid ""
+"_n: Applied: Changes made to %n line undone\n"
+"Applied: Changes made to %n lines undone"
+msgstr ""
+"Sovellettu: Muutoksia %n riville ei ole peruutettu\n"
+"Sovellettu: Muutoksia %n riveille ei ole peruutettu"
+
+#: komparenavtreepart/komparenavtreepart.cpp:429
+#, c-format
+msgid ""
+"_n: Changed %n line\n"
+"Changed %n lines"
+msgstr ""
+"Muutettu %n rivi\n"
+"Muutettu %n riviä"
+
+#: komparenavtreepart/komparenavtreepart.cpp:434
+#, c-format
+msgid ""
+"_n: Applied: Insertion of %n line undone\n"
+"Applied: Insertion of %n lines undone"
+msgstr ""
+"Sovellettu: Lisäykset riville %n peruttu\n"
+"Sovellettu: Lisäykset riville %n peruttu"
+
+#: komparenavtreepart/komparenavtreepart.cpp:437
+#, c-format
+msgid ""
+"_n: Inserted %n line\n"
+"Inserted %n lines"
+msgstr ""
+"Lisätty %n rivi\n"
+"Lisätty %n riviä"
+
+#: komparenavtreepart/komparenavtreepart.cpp:442
+#, c-format
+msgid ""
+"_n: Applied: Deletion of %n line undone\n"
+"Applied: Deletion of %n lines undone"
+msgstr ""
+"Sovellettu: Rivin %n poisto peruttu\n"
+"Sovellettu: Rivinen %n poisto peruttu"
+
+#: komparenavtreepart/komparenavtreepart.cpp:445
+#, c-format
+msgid ""
+"_n: Deleted %n line\n"
+"Deleted %n lines"
+msgstr ""
+"Poistettu %n rivi\n"
+"Poistettu %n riviä"
+
+#: komparenavtreepart/komparenavtreepart.cpp:694
+msgid "KompareNavTreePart"
+msgstr "KompareNavTreePart"
+
+#. i18n: file komparepart/komparepartui.rc line 13
+#: rc.cpp:15
+#, no-c-format
+msgid "&Difference"
+msgstr "&Erot"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 41
+#: rc.cpp:21
+#, no-c-format
+msgid "Run Diff In"
+msgstr "Suorita Diff kansiossa"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 84
+#: rc.cpp:24
+#, no-c-format
+msgid "Command Line"
+msgstr "Komentorivi"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 108
+#: rc.cpp:27
+#, no-c-format
+msgid "cd dir && diff -udHprNa -- source destination"
+msgstr "cd dir && diff -udHprNa -- lähde kohde"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 135
+#: rc.cpp:33
+#, no-c-format
+msgid "Look for smaller changes"
+msgstr "Etsi pienempiä muutoksia"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 146
+#: rc.cpp:36
+#, no-c-format
+msgid "Optimize for large files"
+msgstr "Optimoi suuria tiedostoja varten"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 157
+#: rc.cpp:39
+#, no-c-format
+msgid "Ignore changes in case"
+msgstr "Älä vertaa kirjainkokoa"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 165
+#: rc.cpp:42
+#, no-c-format
+msgid "Expand tabs to spaces"
+msgstr "Muuta sarkainmerkit välilyönneiksi"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 173
+#: rc.cpp:45
+#, no-c-format
+msgid "Ignore added or removed empty lines"
+msgstr "Älä huomioi lisättyjä tai poistettuja tyhjiä rivejä"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 181
+#: rc.cpp:48
+#, no-c-format
+msgid "Ignore changes in whitespace"
+msgstr "Älä huomioi muutoksia tyhjeissä"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 189
+#: rc.cpp:51
+#, no-c-format
+msgid "Show function names"
+msgstr "Näytä funktionimet"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 200
+#: rc.cpp:54
+#, no-c-format
+msgid "Compare folders recursively"
+msgstr "Vertaa kansioita rekursiivisesti"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 211
+#: rc.cpp:57
+#, no-c-format
+msgid "Treat new files as empty"
+msgstr "Kohtele uusia tiedostoja tyhjinä"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 227
+#: rc.cpp:60
+#, no-c-format
+msgid "Format"
+msgstr "Muoto"
+
+#. i18n: file komparepart/komparesaveoptionsbase.ui line 287
+#: rc.cpp:78
+#, no-c-format
+msgid "Side-by-side"
+msgstr "Vierekkäin"
+
+#: kompare_shell.cpp:77
+msgid "Could not find our KompareViewPart."
+msgstr "KompareViewPartia ei löytynyt"
+
+#: kompare_shell.cpp:106
+msgid "Could not load our KompareViewPart."
+msgstr "KompareViewPartia ei voitu ladata"
+
+#: kompare_shell.cpp:114
+msgid "Could not find our KompareNavigationPart."
+msgstr "KompareNavigationPartia ei löytynyt."
+
+#: kompare_shell.cpp:138
+msgid "Could not load our KompareNavigationPart."
+msgstr "KompareNavigationPartia ei voitu .ladata"
+
+#: kompare_shell.cpp:232
+msgid "&Open Diff..."
+msgstr "&Avaa Diff-tiedosto..."
+
+#: kompare_shell.cpp:233
+msgid "&Compare Files..."
+msgstr "&Vertaa tiedostoja..."
+
+#: kompare_shell.cpp:236
+msgid "&Blend URL with Diff..."
+msgstr "&Yhdistä URL Diff-tiedoston kanssa..."
+
+#: kompare_shell.cpp:245
+msgid "Show T&ext View"
+msgstr "Näytä t&ekstinäkymä"
+
+#: kompare_shell.cpp:247
+msgid "Hide T&ext View"
+msgstr "Piilota T&ekstinäkymä"
+
+#: kompare_shell.cpp:256
+msgid " 0 of 0 differences "
+msgstr "Ero 0/0"
+
+#: kompare_shell.cpp:257
+msgid " 0 of 0 files "
+msgstr "Tiedosto 0/0"
+
+#: kompare_shell.cpp:272
+msgid ""
+"_n: %1 of %n file \n"
+" %1 of %n files "
+msgstr ""
+"Tiedosto %1/%n\n"
+"Tiedosto %1/%n"
+
+#: kompare_shell.cpp:274
+#, c-format
+msgid ""
+"_n: %n file \n"
+" %n files "
+msgstr ""
+" %n tiedosto \n"
+" %n tiedostoa "
+
+#: kompare_shell.cpp:277
+msgid ""
+"_n: %1 of %n difference, %2 applied \n"
+" %1 of %n differences, %2 applied "
+msgstr ""
+"Ero %1/%n, %2 otettu käyttöön\n"
+"Ero %1/%n, %2 otettu käyttöön"
+
+#: kompare_shell.cpp:280
+#, c-format
+msgid ""
+"_n: %n difference \n"
+" %n differences "
+msgstr ""
+" %n ero \n"
+" %n eroa "
+
+#: kompare_shell.cpp:368
+msgid "Blend File/Folder with diff Output"
+msgstr "Yhdistä tiedosto/kansio diff-tulosteen kanssa"
+
+#: kompare_shell.cpp:369
+msgid "File/Folder"
+msgstr "Tiedosto/kansio"
+
+#: kompare_shell.cpp:370
+msgid "Diff Output"
+msgstr "Diff-tuloste"
+
+#: kompare_shell.cpp:372
+msgid "Blend"
+msgstr "Yhdistä"
+
+#: kompare_shell.cpp:372
+msgid "Blend this file or folder with the diff output"
+msgstr "Yhdistä tämä tiedosto tai kansio diff-tulosteen kanssa"
+
+#: kompare_shell.cpp:372
+msgid ""
+"If you have entered a file or folder name and a file that contains diff output "
+"in the fields in this dialog then this button will be enabled and pressing it "
+"will open kompare's main view where the output of the entered file or files "
+"from the folder are mixed with the diff output so you can then apply the "
+"difference(s) to a file or to the files. "
+msgstr ""
+"Painike on käytettävissä, kun tiedosto- tai kansionimi ja diff-tiedosto on "
+"syötetty tämän valintaikkunan kenttiin. Painaminen avaa Kompare-ohjelman "
+"pääikkunan, jossa tiedostot näytetään yhdessä diff-tulosteen kanssa, jolloin "
+"erot voidaan liittää tiedostoihin."
+
+#: kompare_shell.cpp:401
+msgid "Compare these files or folders"
+msgstr "Vertaa näitä tiedostoja tai kansioita"
+
+#: kompare_shell.cpp:439
+msgid "Text View"
+msgstr "Tekstinäkymä"
+
+#: libdiff2/komparemodellist.cpp:61
+msgid "&Apply Difference"
+msgstr "&Ota käyttöön muutokset"
+
+#: libdiff2/komparemodellist.cpp:64
+msgid "Un&apply Difference"
+msgstr "&Kumoa muutokset"
+
+#: libdiff2/komparemodellist.cpp:67
+msgid "App&ly All"
+msgstr "O&ta käyttöön kaikki"
+
+#: libdiff2/komparemodellist.cpp:70
+msgid "&Unapply All"
+msgstr "K&umoa kaikki"
+
+#: libdiff2/komparemodellist.cpp:73
+msgid "P&revious File"
+msgstr "&Edellinen tiedosto"
+
+#: libdiff2/komparemodellist.cpp:76
+msgid "N&ext File"
+msgstr "&Seuraava tiedosto"
+
+#: libdiff2/komparemodellist.cpp:79
+msgid "&Previous Difference"
+msgstr "E&dellinen ero"
+
+#: libdiff2/komparemodellist.cpp:82
+msgid "&Next Difference"
+msgstr "Seu&raava ero"
+
+#: libdiff2/komparemodellist.cpp:238 libdiff2/komparemodellist.cpp:262
+msgid ""
+"No models or no differences, this file: %1"
+", is not a valid diff file."
+msgstr ""
+"Ei malleja tai ei eroja, tässä tiedostossa: %1"
+", ei ole kelvollinen diff-tiedosto."
+
+#: libdiff2/komparemodellist.cpp:246
+msgid ""
+"There were problems applying the diff %1 to the file %2."
+msgstr ""
+"Diff-tiedoston %1 muutosten yhdistämisessä tiedostoon %2 "
+"oli ongelmia."
+
+#: libdiff2/komparemodellist.cpp:271
+msgid ""
+"There were problems applying the diff %1 to the folder %2"
+"."
+msgstr ""
+"Diff-tiedoston %1 muutosten yhdistämisessä kansioon %2 "
+"oli ongelmia."
+
+#: libdiff2/komparemodellist.cpp:299 libdiff2/komparemodellist.cpp:582
+msgid "Could not open a temporary file."
+msgstr "Väliaikaistiedostoa ei voi avata."
+
+#: libdiff2/komparemodellist.cpp:350
+msgid "Could not write to the temporary file %1, deleting it."
+msgstr ""
+"Väliaikaistiedostoon %1 ei voitu kirjoittaa. Poistetaan se."
+
+#: libdiff2/komparemodellist.cpp:368
+msgid ""
+"Could not create destination directory %1.\n"
+"The file has not been saved."
+msgstr ""
+"Ei voitu luoda kohdekansiota %1.\n"
+"Tiedostoa ei ole talletettu."
+
+#: libdiff2/komparemodellist.cpp:383
+msgid ""
+"Could not upload the temporary file to the destination location %1"
+". The temporary file is still available under: %2"
+". You can manually copy it to the right place."
+msgstr ""
+"Väliaikaistiedostoa ei voi kopioida kohteeseen %1"
+". Väliaikaistiedosto on edelleen käytettävissä: %2"
+". Voit kopioida sen oikeaan paikkaan käsin."
+
+#: libdiff2/komparemodellist.cpp:435 libdiff2/komparemodellist.cpp:548
+msgid "Could not parse diff output."
+msgstr "Diff-tulostetta ei voi jäsentää."
+
+#: libdiff2/komparemodellist.cpp:451
+msgid "The files are identical."
+msgstr "Tiedostot ovat identtisiä."
+
+#: libdiff2/komparemodellist.cpp:613
+msgid "Could not write to the temporary file."
+msgstr "Väliaikaistiedostoon ei voi kirjoittaa."
diff --git a/tde-i18n-fi/messages/tdesdk/kres_bugzilla.po b/tde-i18n-fi/messages/tdesdk/kres_bugzilla.po
new file mode 100644
index 00000000000..d78ef07c63b
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kres_bugzilla.po
@@ -0,0 +1,45 @@
+# translation of kres_bugzilla.po to
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Ilpo Kantonen , 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: kres_bugzilla\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2004-11-05 00:33+0200\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+
+#: kcalresourceconfig.cpp:45
+msgid "Server:"
+msgstr "Palvelin:"
+
+#: kcalresourceconfig.cpp:52
+msgid "Product:"
+msgstr "Tuote:"
+
+#: kcalresourceconfig.cpp:59
+msgid "Component:"
+msgstr "Komponentti:"
+
+#. i18n: file kresources_kcal_bugzilla.kcfg line 10
+#: rc.cpp:3
+#, no-c-format
+msgid "Server"
+msgstr "Palvelin"
+
+#. i18n: file kresources_kcal_bugzilla.kcfg line 13
+#: rc.cpp:6
+#, no-c-format
+msgid "Product"
+msgstr "Tuote"
+
+#. i18n: file kresources_kcal_bugzilla.kcfg line 16
+#: rc.cpp:9
+#, no-c-format
+msgid "Component"
+msgstr "Komponentti"
diff --git a/tde-i18n-fi/messages/tdesdk/kstartperf.po b/tde-i18n-fi/messages/tdesdk/kstartperf.po
new file mode 100644
index 00000000000..d37c9410299
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kstartperf.po
@@ -0,0 +1,42 @@
+# translation of kstartperf.po to finnish
+# Ilpo Kantonen , 2005.
+msgid ""
+msgstr ""
+"Project-Id-Version: kstartperf\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2005-07-21 04:39+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish >"
+"\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+
+#: kstartperf.cpp:31
+msgid "Specifies the command to run"
+msgstr "Määrittelee suoritettavan komennon"
+
+#: kstartperf.cpp:74
+msgid "KStartPerf"
+msgstr "KStartPerf"
+
+#: kstartperf.cpp:75
+msgid "Measures start up time of a KDE application"
+msgstr "Mittaa KDE sovelluksen käynnistymisajan"
+
+#: kstartperf.cpp:78
+msgid "Maintainer"
+msgstr "Ylläpitäjä"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Kim Enkovaara"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "kim.enkovaara@iki.fi"
diff --git a/tde-i18n-fi/messages/tdesdk/kuiviewer.po b/tde-i18n-fi/messages/tdesdk/kuiviewer.po
new file mode 100644
index 00000000000..9cd0a6beffd
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/kuiviewer.po
@@ -0,0 +1,73 @@
+# translation of kuiviewer.po to finnish
+# translation of kuiviewer.po to
+# Ilpo Kantonen , 2004, 2005.
+msgid ""
+msgstr ""
+"Project-Id-Version: kuiviewer\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2005-07-21 04:37+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish >"
+"\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Ilpo Kantonen"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "ilpo@iki.fi"
+
+#: kuiviewer.cpp:80
+msgid "Unable to locate Kuiviewer kpart."
+msgstr "Kuiviewer kpartia ei löytynyt."
+
+#: kuiviewer.cpp:125
+msgid "*.ui *.UI|User Interface Files"
+msgstr "*.ui *.UI|Käyttöliittymätiedosto"
+
+#. i18n: file kuiviewer_part.rc line 14
+#: kuiviewer_part.cpp:73 rc.cpp:12
+#, no-c-format
+msgid "Style"
+msgstr "Tyyli"
+
+#: kuiviewer_part.cpp:97
+msgid "Set the current style to view."
+msgstr "Aseta nykyinen tyyli näyttöön."
+
+#: kuiviewer_part.cpp:119
+msgid "KUIViewerPart"
+msgstr "KUIViewerPart"
+
+#: kuiviewer_part.cpp:120 main.cpp:44
+msgid "Displays Designer's UI files"
+msgstr "Näyttää suunnittelijan UI-tiedostot"
+
+#: main.cpp:31
+msgid "Document to open"
+msgstr "Avattava dokumentti"
+
+#: main.cpp:33
+msgid "Save screenshot to file and exit"
+msgstr "Talleta kuvakaappaukset tiedostoon ja lopeta"
+
+#: main.cpp:35
+msgid "Screenshot width"
+msgstr "Kuvakaappauksen leveys"
+
+#: main.cpp:37
+msgid "Screenshot height"
+msgstr "Kuvakaappauksen korkeus"
+
+#: main.cpp:43
+msgid "KUIViewer"
+msgstr "KUIViewer"
diff --git a/tde-i18n-fi/messages/tdesdk/spy.po b/tde-i18n-fi/messages/tdesdk/spy.po
new file mode 100644
index 00000000000..3f0c4252338
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/spy.po
@@ -0,0 +1,78 @@
+# translation of spy.po to finnish
+# Ilpo Kantonen , 2005.
+msgid ""
+msgstr ""
+"Project-Id-Version: spy\n"
+"POT-Creation-Date: 2005-05-18 21:25+0200\n"
+"PO-Revision-Date: 2005-07-21 04:43+0300\n"
+"Last-Translator: Ilpo Kantonen \n"
+"Language-Team: finnish >"
+"\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.1\n"
+
+#: receiversview.cpp:36
+msgid "Object"
+msgstr "Olio"
+
+#: navview.cpp:29 propsview.cpp:55 receiversview.cpp:37
+msgid "Type"
+msgstr "Tyyppi"
+
+#: receiversview.cpp:38
+msgid "Member Name"
+msgstr "Jäsennimi"
+
+#: classinfoview.cpp:30 navview.cpp:28 propsview.cpp:53
+msgid "Name"
+msgstr "Nimi"
+
+#: classinfoview.cpp:31 propsview.cpp:54
+msgid "Value"
+msgstr "Arvo"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Kim Enkovaara"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "kim.enkovaara@iki.fi"
+
+#: main.cpp:25 main.cpp:38
+msgid "Spy"
+msgstr "Vakoilija"
+
+#: spy.cpp:67
+msgid "Signals && Slots"
+msgstr "Signaalit && Kortit"
+
+#: spy.cpp:70
+msgid "Receivers"
+msgstr "Vastaanottimet"
+
+#: spy.cpp:73
+msgid "Class Info"
+msgstr "Luokkatieto"
+
+#: propsview.cpp:56
+msgid "Access"
+msgstr "Saanti"
+
+#: propsview.cpp:57
+msgid "Designable"
+msgstr "Suunniteltavissa"
+
+#: propsview.cpp:58
+msgid "Type Flags"
+msgstr "Tyyppiliput"
+
+#: sigslotview.cpp:30
+msgid "Signals/Slots"
+msgstr "Signaalit/kortit"
diff --git a/tde-i18n-fi/messages/tdesdk/umbrello.po b/tde-i18n-fi/messages/tdesdk/umbrello.po
new file mode 100644
index 00000000000..c421aac001b
--- /dev/null
+++ b/tde-i18n-fi/messages/tdesdk/umbrello.po
@@ -0,0 +1,3940 @@
+# translation of umbrello.po to finnish
+# Ilpo Kantonen , 2004, 2005, 2006.
+# Jari-Matti Mäkelä , 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: umbrello\n"
+"POT-Creation-Date: 2008-07-08 01:21+0200\n"
+"PO-Revision-Date: 2007-06-22 15:58+0300\n"
+"Last-Translator: Jari-Matti Mäkelä \n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: worktoolbar.cpp:245
+msgid "Object"
+msgstr "Objekti"
+
+#: worktoolbar.cpp:246
+msgid "Synchronous Message"
+msgstr "Tahdistettu viesti"
+
+#: worktoolbar.cpp:247
+msgid "Asynchronous Message"
+msgstr "Tahdistamaton viesti"
+
+#: association.cpp:87 worktoolbar.cpp:248
+msgid "Association"
+msgstr "Assosiaatio"
+
+#: association.cpp:93 worktoolbar.cpp:249
+msgid "Containment"
+msgstr "Säiliö"
+
+#: association.cpp:97 worktoolbar.cpp:250
+msgid "Anchor"
+msgstr "Ankkuri"
+
+#: worktoolbar.cpp:251
+msgid "Label"
+msgstr "Nimike"
+
+#: worktoolbar.cpp:252
+msgid "Note"
+msgstr "Viesti"
+
+#: worktoolbar.cpp:253
+msgid "Box"
+msgstr "Laatikko"
+
+#: listpopupmenu.cpp:545 worktoolbar.cpp:254
+msgid "Actor"
+msgstr "Aktori"
+
+#: association.cpp:86 worktoolbar.cpp:255
+msgid "Dependency"
+msgstr "Riippuvuus"
+
+#: association.cpp:85 worktoolbar.cpp:256
+msgid "Aggregation"
+msgstr "Aggregaatti"
+
+#: worktoolbar.cpp:257
+msgid "Relationship"
+msgstr "Suhde"
+
+#: worktoolbar.cpp:258
+msgid "Directional Association"
+msgstr "Suunnattu assosiaatio"
+
+#: worktoolbar.cpp:259
+msgid "Implements (Generalisation/Realisation)"
+msgstr "Toteuttaa (Yleistys/Realisointi)"
+
+#: association.cpp:94 worktoolbar.cpp:260
+msgid "Composition"
+msgstr "Kompositio"
+
+#: dialogs/diagramprintpage.cpp:92 dialogs/diagramprintpage.cpp:202
+#: listpopupmenu.cpp:548 worktoolbar.cpp:261
+msgid "Use Case"
+msgstr "Käyttötapaus"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 249
+#: codeimport/import_utils.cpp:183 dialogs/diagramprintpage.cpp:91
+#: dialogs/diagramprintpage.cpp:198 dialogs/settingsdlg.cpp:210
+#: listpopupmenu.cpp:609 rc.cpp:360 worktoolbar.cpp:262
+#, no-c-format
+msgid "Class"
+msgstr "Luokka"
+
+#: listpopupmenu.cpp:1030 worktoolbar.cpp:263
+msgid "Initial State"
+msgstr "Alkutila"
+
+#: listpopupmenu.cpp:1031 worktoolbar.cpp:264
+msgid "End State"
+msgstr "Lopputila"
+
+#: dialogs/activitydialog.cpp:70 listpopupmenu.cpp:1044 worktoolbar.cpp:265
+msgid "Branch/Merge"
+msgstr "Hajota/Lomita"
+
+#: dialogs/activitydialog.cpp:70 worktoolbar.cpp:266
+msgid "Fork/Join"
+msgstr "Eriytä/Liitä"
+
+#: listpopupmenu.cpp:510 listpopupmenu.cpp:692 worktoolbar.cpp:267
+msgid "Package"
+msgstr "Pakkaus"
+
+#: dialogs/diagramprintpage.cpp:97 dialogs/diagramprintpage.cpp:210
+#: listpopupmenu.cpp:515 worktoolbar.cpp:268
+msgid "Component"
+msgstr "Komponentti"
+
+#: listpopupmenu.cpp:525 worktoolbar.cpp:269
+msgid "Node"
+msgstr "Paketti"
+
+#: listpopupmenu.cpp:518 worktoolbar.cpp:270
+msgid "Artifact"
+msgstr "Teos"
+
+#: listpopupmenu.cpp:610 worktoolbar.cpp:271
+msgid "Interface"
+msgstr "Rajapinta"
+
+#: listpopupmenu.cpp:611 worktoolbar.cpp:272
+msgid "Datatype"
+msgstr "Tietotyyppi"
+
+#: listpopupmenu.cpp:612 worktoolbar.cpp:273
+msgid "Enum"
+msgstr "Lueteltu tyyppi"
+
+#: listpopupmenu.cpp:538 worktoolbar.cpp:274
+msgid "Entity"
+msgstr "Entiteetti"
+
+#: worktoolbar.cpp:275
+msgid "Deep History"
+msgstr "Syvä historia"
+
+#: worktoolbar.cpp:276
+msgid "Shallow History"
+msgstr "Matala historia"
+
+#: worktoolbar.cpp:277
+#, fuzzy
+msgid "Join"
+msgstr "Liity"
+
+#: worktoolbar.cpp:278
+#, fuzzy
+msgid "Fork"
+msgstr "Jaa"
+
+#: worktoolbar.cpp:279
+msgid "Junction"
+msgstr "Liitos"
+
+#: worktoolbar.cpp:280
+msgid "Choice"
+msgstr "Valinta"
+
+#: association.cpp:98 worktoolbar.cpp:284
+msgid "State Transition"
+msgstr "Tilasiirtymä"
+
+#: worktoolbar.cpp:285
+#, fuzzy
+msgid "Activity Transition"
+msgstr "Tilasiirtymä"
+
+#: association.cpp:99 dialogs/activitydialog.cpp:70
+#: dialogs/diagramprintpage.cpp:96 dialogs/diagramprintpage.cpp:208
+#: worktoolbar.cpp:286
+msgid "Activity"
+msgstr "Aktiviteetti"
+
+#: dialogs/diagramprintpage.cpp:95 dialogs/diagramprintpage.cpp:206
+#: dialogs/statedialog.cpp:85 worktoolbar.cpp:287
+msgid "State"
+msgstr "Tila"
+
+#: listpopupmenu.cpp:1042 worktoolbar.cpp:288
+msgid "End Activity"
+msgstr ""
+
+#: listpopupmenu.cpp:1041 worktoolbar.cpp:289
+msgid "Initial Activity"
+msgstr "Aktiviteetin alkuarvo"
+
+#: worktoolbar.cpp:290
+msgid "Message"
+msgstr "Viesti"
+
+#: worktoolbar.cpp:298
+msgid "UNDEFINED"
+msgstr "MÄÄRITTELEMÄTÖN"
+
+#: worktoolbar.cpp:302
+msgid "Select"
+msgstr "Valitse"
+
+#: umlwidgetcontroller.cpp:128
+msgid ""
+"Hold shift or ctrl to move in X axis. Hold shift and control to move in Y axis. "
+"Right button click to cancel move."
+msgstr ""
+
+#: umlwidgetcontroller.cpp:379
+msgid ""
+"Hold shift or ctrl to move in X axis. Hold shift and control to move in Y axis. "
+"Right button click to cancel resize."
+msgstr ""
+
+#: dialogs/activitydialog.cpp:70
+msgid "Initial activity"
+msgstr "Aktiviteetin alkuasetus"
+
+#: dialogs/activitydialog.cpp:70
+msgid "End activity"
+msgstr ""
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 118
+#: dialogs/activitydialog.cpp:73 dialogs/assocpropdlg.cpp:87
+#: dialogs/classpropdlg.cpp:69 dialogs/classpropdlg.cpp:170
+#: dialogs/classpropdlg.cpp:232 dialogs/settingsdlg.cpp:99
+#: dialogs/statedialog.cpp:88 dialogs/umlviewdialog.cpp:70 rc.cpp:45
+#: rc.cpp:225
+#, no-c-format
+msgid "General"
+msgstr "Yleinen"
+
+#: dialogs/activitydialog.cpp:73 dialogs/statedialog.cpp:88
+#: dialogs/umlattributedialog.cpp:55 dialogs/umlentityattributedialog.cpp:56
+#: dialogs/umloperationdialog.cpp:64 dialogs/umltemplatedialog.cpp:48
+msgid "General Properties"
+msgstr "Yleisasetukset"
+
+#: dialogs/activitydialog.cpp:82
+msgid "Activity type:"
+msgstr "Aktiviteetin tyyppi:"
+
+#: dialogs/activitydialog.cpp:87
+msgid "Activity name:"
+msgstr "Aktiviteetin nimi:"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 36
+#: dialogs/activitydialog.cpp:90 dialogs/assocgenpage.cpp:56
+#: dialogs/assocrolepage.cpp:76 dialogs/assocrolepage.cpp:77
+#: dialogs/classgenpage.cpp:193 dialogs/classgenpage.cpp:293
+#: dialogs/classgenpage.cpp:356 dialogs/classifierlistpage.cpp:106
+#: dialogs/notedialog.cpp:29 dialogs/parmpropdlg.cpp:100
+#: dialogs/statedialog.cpp:104 docwindow.cpp:33 rc.cpp:30 rc.cpp:150
+#: rc.cpp:207 rc.cpp:445 rc.cpp:492
+#, no-c-format
+msgid "Documentation"
+msgstr "Dokumentaatio"
+
+#: dialogs/activitydialog.cpp:108 dialogs/assocpropdlg.cpp:109
+#: dialogs/classpropdlg.cpp:243 dialogs/settingsdlg.cpp:306
+#: dialogs/statedialog.cpp:124 dialogs/umlviewdialog.cpp:107
+msgid "Font Settings"
+msgstr "Fonttiasetukset"
+
+#: dialogs/activitydialog.cpp:114 dialogs/classpropdlg.cpp:75
+#: dialogs/classpropdlg.cpp:125 dialogs/settingsdlg.cpp:49
+#: dialogs/statedialog.cpp:130 dialogs/umlviewdialog.cpp:100
+#: dialogs/umlwidgetcolorpage.cpp:53 listpopupmenu.cpp:739
+#: listpopupmenu.cpp:750
+msgid "Color"
+msgstr "Väri"
+
+#: dialogs/activitydialog.cpp:114 dialogs/classpropdlg.cpp:75
+#: dialogs/classpropdlg.cpp:125
+msgid "Widget Colors"
+msgstr "Elementtien värit"
+
+#: dialogs/overwritedialogue.cpp:27
+msgid "Destination File Already Exists"
+msgstr "Kohdetiedosto on jo olemassa"
+
+#: dialogs/overwritedialogue.cpp:31
+msgid ""
+"The file %1 already exists in %2.\n"
+"\n"
+"Umbrello can overwrite the file, generate a similar\n"
+"file name or not generate this file."
+msgstr ""
+"Tiedosto %1 on jo olemassa kansiossa %2.\n"
+"\n"
+"Umbrello voi ylikirjoittaa tiedoston, luoda samanlaisen\n"
+"tai ei luoda samanlaista tiedostoa."
+
+#: dialogs/overwritedialogue.cpp:34
+msgid "&Apply to all remaining files"
+msgstr "Tee k&aikille jäljelläoleville tiedostoille"
+
+#: dialogs/overwritedialogue.cpp:38 umlviewimageexporter.cpp:67
+msgid "&Overwrite"
+msgstr "&Ylikirjoita"
+
+#: dialogs/overwritedialogue.cpp:39
+msgid "&Generate Similar File Name"
+msgstr "&Luo samanlainen tiedostonnimi"
+
+#: dialogs/overwritedialogue.cpp:40
+msgid "&Do Not Generate File"
+msgstr "Ä&lä luo tiedostoa"
+
+#: dialogs/activitypage.cpp:38 dialogs/statedialog.cpp:137
+msgid "Activities"
+msgstr "Aktiviteetit"
+
+#: dialogs/activitypage.cpp:72
+msgid "New Activity..."
+msgstr "Uusi aktiviteetti..."
+
+#: dialogs/activitypage.cpp:75 floatingtextwidget.cpp:178
+msgid "Rename"
+msgstr "Vaihda nimeä"
+
+#: dialogs/activitypage.cpp:134
+msgid "New Activity"
+msgstr "Uusi aktiviteetti"
+
+#: activitywidget.cpp:163 dialogs/activitypage.cpp:134 statewidget.cpp:176
+#: toolbarstateother.cpp:144 umlview.cpp:2546
+msgid "Enter the name of the new activity:"
+msgstr "Anna uuden aktiviteetin nimi"
+
+#: dialogs/activitypage.cpp:135 statewidget.cpp:176 toolbarstateother.cpp:144
+#: umlview.cpp:2547
+msgid "new activity"
+msgstr "uusi aktiviteetti"
+
+#: dialogs/activitypage.cpp:153
+msgid "Rename Activity"
+msgstr "Uudelleennimeä aktiviteetti"
+
+#: dialogs/activitypage.cpp:153
+msgid "Enter the new name of the activity:"
+msgstr "Anna aktiviteetin uusi nimi:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 24
+#: dialogs/codegenerationwizard.cpp:54 rc.cpp:222
+#, no-c-format
+msgid "Code Generation Options"
+msgstr "Koodinluonnin optiot"
+
+#: dialogs/codegenerationwizard.cpp:70
+msgid "&Generate"
+msgstr "&Luo"
+
+#: dialogs/codegenerationwizard.cpp:120
+msgid "Finish"
+msgstr "Lopetus"
+
+#: dialogs/codegenerationwizard.cpp:132
+msgid "Code Generated"
+msgstr "Koodinluonti"
+
+#: dialogs/codegenerationwizard.cpp:134
+msgid "Not Generated"
+msgstr "Ei ole luotu"
+
+#: dialogs/codegenerationwizard.cpp:141
+msgid "Not Yet Generated"
+msgstr "Ei ole vielä luotu"
+
+#: dialogs/codegenerationwizard.cpp:162
+msgid "The folder %1 does not exist. Do you want to create it now?"
+msgstr "Kansiota %1 ei ole. Haluatko luoda sen nyt?"
+
+#: dialogs/codegenerationwizard.cpp:163 dialogs/codegenerationwizard.cpp:177
+msgid "Output Folder Does Not Exist"
+msgstr "Tuloskansiota ei ole"
+
+#: dialogs/codegenerationwizard.cpp:163
+msgid "Create Folder"
+msgstr "Luo kansio"
+
+#: dialogs/codegenerationwizard.cpp:163
+msgid "Do Not Create"
+msgstr "Älä luo"
+
+#: dialogs/codegenerationwizard.cpp:168
+msgid ""
+"The folder could not be created.\n"
+"Please make sure you have write access to its parent folder or select another, "
+"valid, folder."
+msgstr ""
+"Kansiota ei voitu luoda.\n"
+"Tarkista kirjoitusoikeudet ylemmän tason kansioon tai valitse toinen "
+"kelvollinen kansio."
+
+#: dialogs/codegenerationwizard.cpp:169
+msgid "Error Creating Folder"
+msgstr "Virhe kansion luonnissa"
+
+#: dialogs/codegenerationwizard.cpp:176
+msgid "Please select a valid folder."
+msgstr "Ole hyvä ja valitse kelvollinen kansio."
+
+#: dialogs/codegenerationwizard.cpp:184
+msgid ""
+"The output folder exists, but it is not writable.\n"
+"Please set the appropriate permissions or choose another folder."
+msgstr ""
+"Kohdekansio on olemassa, mutta ei kirjoitettavana.\n"
+"Aseta sen kirjoitusoikeudet tai valitse toinen kansio."
+
+#: dialogs/codegenerationwizard.cpp:185
+msgid "Error Writing to Output Folder"
+msgstr "Virhe kohdekansioon kirjoituksessa"
+
+#: dialogs/codegenerationwizard.cpp:191
+msgid "%1 does not seem to be a folder. Please choose a valid folder."
+msgstr "%1 ei näytä kansiolta. Ole hyvä ja valitse kelvollinen kansio."
+
+#: dialogs/codegenerationwizard.cpp:192
+msgid "Please Choose Valid Folder"
+msgstr "Ole hyvä ja valitse kelvollinen kansio"
+
+#: dialogs/statedialog.cpp:85
+msgid "Initial state"
+msgstr "Alkutila"
+
+#: dialogs/statedialog.cpp:85
+msgid "End state"
+msgstr "Lopputila"
+
+#: dialogs/statedialog.cpp:96
+msgid "State type:"
+msgstr "Tilan tyyppi:"
+
+#: dialogs/statedialog.cpp:101
+msgid "State name:"
+msgstr "Tilan nimi:"
+
+#: dialogs/statedialog.cpp:130
+msgid "Widget Color"
+msgstr "Elementin väri"
+
+#: dialogs/assocpropdlg.cpp:87 dialogs/classpropdlg.cpp:69
+#: dialogs/classpropdlg.cpp:170 dialogs/classpropdlg.cpp:232
+#: dialogs/settingsdlg.cpp:99 dialogs/umlviewdialog.cpp:70
+msgid "General Settings"
+msgstr "Yleisasetukset"
+
+#: dialogs/classpropdlg.cpp:118 dialogs/umlviewdialog.cpp:93
+msgid "Display"
+msgstr "Näyttö"
+
+#: dialogs/umlviewdialog.cpp:93
+msgid "Classes Display Options"
+msgstr "Luokkanäytön asetukset"
+
+#: dialogs/umlviewdialog.cpp:100
+msgid "Diagram Colors"
+msgstr "Diagrammin värit"
+
+#: dialogs/umlviewdialog.cpp:164
+msgid "The name you have entered is invalid."
+msgstr "Antamasi nimi on epäkelpo."
+
+#: classifier.cpp:294 classifier.cpp:522 dialogs/umlviewdialog.cpp:165
+#: entity.cpp:78 enum.cpp:76 object_factory.cpp:159 umldoc.cpp:984
+#: umldoc.cpp:1017 umldoc.cpp:1037 umldoc.cpp:1063
+msgid "Invalid Name"
+msgstr "Epäkelpo nimi"
+
+#: dialogs/umlviewdialog.cpp:170
+msgid "The name you have entered is not unique."
+msgstr "Antamasi nimi on jo käytössä."
+
+#: dialogs/umlviewdialog.cpp:171 umldoc.cpp:1068 umllistview.cpp:1918
+#: umllistview.cpp:1925 umllistview.cpp:2162
+msgid "Name Not Unique"
+msgstr "Nimi ei ole ainutkertainen."
+
+#. i18n: file dialogs/codeviewerdialogbase.ui line 21
+#: dialogs/codeviewerdialog.cpp:119 dialogs/settingsdlg.cpp:301 rc.cpp:366
+#, no-c-format
+msgid "Code Viewer"
+msgstr "Koodin näyttö"
+
+#: dialogs/classifierlistpage.cpp:38 dialogs/classpropdlg.cpp:179
+#: listpopupmenu.cpp:670 refactoring/refactoringassistant.cpp:482
+msgid "Attributes"
+msgstr "Attribuutit"
+
+#: dialogs/classifierlistpage.cpp:39
+msgid "N&ew Attribute..."
+msgstr "Uusi &attribuutti..."
+
+#: dialogs/classifierlistpage.cpp:41 dialogs/classpropdlg.cpp:187
+#: listpopupmenu.cpp:674 refactoring/refactoringassistant.cpp:499
+msgid "Operations"
+msgstr "Metodit"
+
+#: dialogs/classifierlistpage.cpp:42
+msgid "N&ew Operation..."
+msgstr "Uusi m&etodi..."
+
+#: dialogs/classifierlistpage.cpp:44 dialogs/classpropdlg.cpp:195
+msgid "Templates"
+msgstr "Mallit"
+
+#: dialogs/classifierlistpage.cpp:45
+msgid "N&ew Template..."
+msgstr "Uusi &Malli..."
+
+#: dialogs/classifierlistpage.cpp:47 dialogs/classpropdlg.cpp:202
+msgid "Enum Literals"
+msgstr "Luetellun tyypin literaalit"
+
+#: dialogs/classifierlistpage.cpp:48
+msgid "N&ew Enum Literal..."
+msgstr "Uusi lit&eraali"
+
+#: dialogs/classifierlistpage.cpp:50 dialogs/classpropdlg.cpp:209
+msgid "Entity Attributes"
+msgstr "Entiteetin attribuutit"
+
+#: dialogs/classifierlistpage.cpp:51
+msgid "N&ew Entity Attribute..."
+msgstr "&Uusi attribuutti..."
+
+#: dialogs/classifierlistpage.cpp:101 dialogs/umloperationdialog.cpp:143
+#: uml.cpp:273
+msgid "&Properties"
+msgstr "&Ominaisuudet"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 36
+#: dialogs/umlroledialog.cpp:25 rc.cpp:483
+#, no-c-format
+msgid "Role Properties"
+msgstr "Roolien ominaisuudet"
+
+#: dialogs/classpropdlg.cpp:118
+msgid "Display Options"
+msgstr "Näyttöasetukset"
+
+#: dialogs/classpropdlg.cpp:179
+msgid "Attribute Settings"
+msgstr "Attribuuttien asetukset"
+
+#: dialogs/classpropdlg.cpp:187
+msgid "Operation Settings"
+msgstr "Metodien asetukset"
+
+#: dialogs/classpropdlg.cpp:195
+msgid "Templates Settings"
+msgstr "Malliasetukset"
+
+#: dialogs/classpropdlg.cpp:202
+msgid "Enum Literals Settings"
+msgstr "Lueteltujen literaalien asetukset"
+
+#: dialogs/classpropdlg.cpp:209
+msgid "Entity Attributes Settings"
+msgstr "Attribuuttien asetukset"
+
+#: dialogs/classpropdlg.cpp:216
+msgid "Contents Settings"
+msgstr "Sisältöasetukset"
+
+#: dialogs/assocpage.cpp:25 dialogs/classpropdlg.cpp:222
+msgid "Associations"
+msgstr "Assosiaatiot"
+
+#: dialogs/classpropdlg.cpp:222
+msgid "Class Associations"
+msgstr "Luokka-assosiaatiot"
+
+#: dialogs/umloperationdialog.cpp:50
+msgid "Operation Properties"
+msgstr "Toimintojen ominaisuudet"
+
+#: dialogs/parmpropdlg.cpp:70 dialogs/umlattributedialog.cpp:68
+#: dialogs/umlentityattributedialog.cpp:69 dialogs/umloperationdialog.cpp:74
+#: dialogs/umltemplatedialog.cpp:61
+msgid "&Name:"
+msgstr "&Nimi:"
+
+#: dialogs/parmpropdlg.cpp:62 dialogs/umlattributedialog.cpp:60
+#: dialogs/umlentityattributedialog.cpp:61 dialogs/umloperationdialog.cpp:77
+#: dialogs/umltemplatedialog.cpp:53
+msgid "&Type:"
+msgstr "&Tyyppi:"
+
+#: dialogs/classgenpage.cpp:334 dialogs/parmpropdlg.cpp:77
+#: dialogs/umlattributedialog.cpp:76 dialogs/umlentityattributedialog.cpp:77
+#: dialogs/umloperationdialog.cpp:84
+msgid "Stereotype name:"
+msgstr "Stereotyypin nimi:"
+
+#: dialogs/umloperationdialog.cpp:89
+msgid "&Abstract operation"
+msgstr "&Abstrakti toiminto"
+
+#: dialogs/umlattributedialog.cpp:79 dialogs/umloperationdialog.cpp:92
+msgid "Classifier &scope (\"static\")"
+msgstr "Luokkakohtainen &näkyvyys (\"static\")"
+
+#: dialogs/umloperationdialog.cpp:95
+msgid "&Query (\"const\")"
+msgstr "&Kysely (\"const\")"
+
+#: dialogs/classgenpage.cpp:171 dialogs/settingsdlg.cpp:211
+#: dialogs/umlattributedialog.cpp:87 dialogs/umloperationdialog.cpp:101
+#: listpopupmenu.cpp:678
+msgid "Visibility"
+msgstr "Näkyvyys"
+
+#: dialogs/classgenpage.cpp:176 dialogs/umloperationdialog.cpp:106
+msgid "P&ublic"
+msgstr "J&ulkinen"
+
+#: dialogs/classgenpage.cpp:179 dialogs/umlattributedialog.cpp:94
+#: dialogs/umloperationdialog.cpp:109
+msgid "P&rivate"
+msgstr "&Yksityinen"
+
+#: dialogs/umlattributedialog.cpp:97 dialogs/umloperationdialog.cpp:112
+msgid "Prot&ected"
+msgstr "&Suojattu"
+
+#: dialogs/umlattributedialog.cpp:100 dialogs/umloperationdialog.cpp:115
+#, fuzzy
+msgid "I&mplementation"
+msgstr "&Toteutus"
+
+#: dialogs/umloperationdialog.cpp:120
+msgid "Parameters"
+msgstr "Parametrit"
+
+#: dialogs/umloperationdialog.cpp:141
+msgid "Ne&w Parameter..."
+msgstr "&Uusi parametri..."
+
+#: dialogs/umloperationdialog.cpp:323 dialogs/umloperationdialog.cpp:376
+msgid "You have entered an invalid parameter name."
+msgstr "Olet antanut epäkelvon parametrin nimen."
+
+#: dialogs/umloperationdialog.cpp:324 dialogs/umloperationdialog.cpp:377
+msgid "Parameter Name Invalid"
+msgstr "Parametrin nimi epäkelpo."
+
+#: dialogs/umloperationdialog.cpp:339
+msgid ""
+"The parameter name you have chosen\n"
+"is already being used in this operation."
+msgstr ""
+"Antamasi parametrin nimi on jo\n"
+"käytössä tässä toiminnossa."
+
+#: dialogs/umloperationdialog.cpp:340 dialogs/umloperationdialog.cpp:407
+msgid "Parameter Name Not Unique"
+msgstr "Parametrin nimi ei ole yksilöllinen"
+
+#: dialogs/umloperationdialog.cpp:406
+msgid ""
+"The parameter name you have chosen is already being used in this operation."
+msgstr "Valitsemasi parametri on jo käytössä tässä toiminnossa."
+
+#: dialogs/umloperationdialog.cpp:456
+msgid "You have entered an invalid operation name."
+msgstr "Olet valinnut epäkelvon toiminnon."
+
+#: dialogs/umloperationdialog.cpp:457 dialogs/umloperationdialog.cpp:469
+#: refactoring/refactoringassistant.cpp:656
+msgid "Operation Name Invalid"
+msgstr "Epäkelpo toiminnon nimi"
+
+#: dialogs/umloperationdialog.cpp:466 refactoring/refactoringassistant.cpp:653
+msgid ""
+"An operation with that signature already exists in %1.\n"
+msgstr ""
+"Toiminnolla on jo allekirjoitus %1:ssa.\n"
+
+#: dialogs/umloperationdialog.cpp:468 refactoring/refactoringassistant.cpp:655
+msgid "Choose a different name or parameter list."
+msgstr "Valitse toinen nimi tai parametrilista."
+
+#: dialogs/classwizard.cpp:33 model_utils.cpp:242
+msgid "new_class"
+msgstr "uusi_luokka"
+
+#: dialogs/classwizard.cpp:54
+msgid "New Class"
+msgstr "Uusi luokka"
+
+#: dialogs/classwizard.cpp:59
+msgid "Class Attributes"
+msgstr "Luokan attribuutit"
+
+#: dialogs/classwizard.cpp:63
+msgid "Class Operations"
+msgstr "Luokan metodit"
+
+#: dialogs/parmpropdlg.cpp:35
+msgid "Parameter Properties"
+msgstr "Parametrin ominaisuudet"
+
+#: dialogs/parmpropdlg.cpp:74 dialogs/umlattributedialog.cpp:72
+msgid "&Initial value:"
+msgstr "&Alkuarvo:"
+
+#: dialogs/parmpropdlg.cpp:82
+msgid "Passing Direction"
+msgstr "Välityssuunta"
+
+#: dialogs/parmpropdlg.cpp:84
+msgid ""
+"\"in\" is a readonly parameter, \"out\" is a writeonly parameter and \"inout\" "
+"is a parameter for reading and writing."
+msgstr ""
+
+#: dialogs/umlattributedialog.cpp:42
+msgid "Attribute Properties"
+msgstr "Attribuutin ominaisuudet"
+
+#: dialogs/umlattributedialog.cpp:91
+msgid "&Public"
+msgstr "&Public"
+
+#: dialogs/umlattributedialog.cpp:155
+msgid "You have entered an invalid attribute name."
+msgstr "Olet antanut epäkelvon attribuutin nimen."
+
+#: dialogs/umlattributedialog.cpp:156
+msgid "Attribute Name Invalid"
+msgstr "Attribuutin arvo epäkelpo"
+
+#: dialogs/umlattributedialog.cpp:163
+msgid ""
+"The attribute name you have chosen is already being used in this operation."
+msgstr "Valitsemasi attribuutin nimi on jo käytössä tässä toiminnossa."
+
+#: dialogs/umlattributedialog.cpp:164
+msgid "Attribute Name Not Unique"
+msgstr "Attribuutin nimi ei ole yksilöllinen"
+
+#: dialogs/classgenpage.cpp:50
+msgid "Class &name:"
+msgstr "Luokan &nimi:"
+
+#: dialogs/classgenpage.cpp:52
+msgid "Actor &name:"
+msgstr "Aktorin &nimi:"
+
+#: dialogs/classgenpage.cpp:54
+msgid "Package &name:"
+msgstr "Paketin &nimi:"
+
+#: dialogs/classgenpage.cpp:56
+msgid "Use case &name:"
+msgstr "Käyttötapauksen &nimi:"
+
+#: dialogs/classgenpage.cpp:58
+msgid "Interface &name:"
+msgstr "Rajapinnan &nimi:"
+
+#: dialogs/classgenpage.cpp:60
+msgid "Component &name:"
+msgstr "Komponentin &nimi:"
+
+#: dialogs/classgenpage.cpp:62
+msgid "Artifact &name:"
+msgstr "Jäänteen &nimi:"
+
+#: dialogs/classgenpage.cpp:64
+msgid "Enum &name:"
+msgstr "Luetellun tyypin &nimi"
+
+#: dialogs/classgenpage.cpp:66
+msgid "Datatype &name:"
+msgstr "Tietotyypin &nimi:"
+
+#: dialogs/classgenpage.cpp:68
+msgid "Entity &name:"
+msgstr "Entiteetin &nimi:"
+
+#: dialogs/classgenpage.cpp:93 dialogs/umltemplatedialog.cpp:65
+msgid "&Stereotype name:"
+msgstr "&Stereotyypin nimi:"
+
+#: dialogs/classgenpage.cpp:107
+msgid "&Package name:"
+msgstr "&Paketin nimi:"
+
+#: dialogs/classgenpage.cpp:121
+msgid "A&bstract class"
+msgstr "A&bstrakti luokka"
+
+#: dialogs/classgenpage.cpp:123
+msgid "A&bstract use case"
+msgstr "A&bstrakti käyttötapaus"
+
+#: dialogs/classgenpage.cpp:131
+msgid "&Executable"
+msgstr "Suorit&ettava"
+
+#: dialogs/classgenpage.cpp:138
+msgid "Draw As"
+msgstr "Piirrä"
+
+#: dialogs/classgenpage.cpp:143 dialogs/umlwidgetcolorpage.cpp:65
+msgid "&Default"
+msgstr "&Oletus"
+
+#: dialogs/classgenpage.cpp:149
+msgid "&Library"
+msgstr "Kir&jasto"
+
+#: dialogs/classgenpage.cpp:152
+msgid "&Table"
+msgstr "&Taulukko"
+
+#: dialogs/classgenpage.cpp:182
+msgid "Pro&tected"
+msgstr "Pro&tected"
+
+#: dialogs/classgenpage.cpp:186
+msgid "Imple&mentation"
+msgstr "&Toteutus"
+
+#: dialogs/classgenpage.cpp:256
+msgid "Class name:"
+msgstr "Luokan nimi:"
+
+#: dialogs/classgenpage.cpp:264 dialogs/classgenpage.cpp:344
+msgid "Instance name:"
+msgstr "Instanssin nimi:"
+
+#: dialogs/classgenpage.cpp:272
+msgid "Draw as actor"
+msgstr "Piirrä aktorina"
+
+#: dialogs/classgenpage.cpp:277
+msgid "Multiple instance"
+msgstr "Monitoteutus"
+
+#: dialogs/classgenpage.cpp:284
+msgid "Show destruction"
+msgstr "Näytä erillisinä"
+
+#: dialogs/classgenpage.cpp:322
+msgid "Component name:"
+msgstr "Komponentin nimi:"
+
+#: dialogs/classgenpage.cpp:324
+msgid "Node name:"
+msgstr "Paketin nimi:"
+
+#: dialogs/classgenpage.cpp:398 dialogs/classgenpage.cpp:445
+#: dialogs/classgenpage.cpp:456
+msgid ""
+"The name you have chosen\n"
+"is already being used.\n"
+"The name has been reset."
+msgstr ""
+"Valitsemasi nimi\n"
+"on jo käytössä.\n"
+"Nimi on palautettu."
+
+#: dialogs/classgenpage.cpp:399 dialogs/classgenpage.cpp:446
+#: dialogs/classgenpage.cpp:457
+msgid "Name is Not Unique"
+msgstr "Nimi ei ole yksilöllinen"
+
+#: dialogs/umlentityattributedialog.cpp:43
+msgid "Entity Attribute Properties"
+msgstr "Entiteetin attribuutin ominaisuudet"
+
+#: dialogs/umlentityattributedialog.cpp:73
+msgid "&Default value:"
+msgstr "&Oletusarvo"
+
+#: dialogs/umlentityattributedialog.cpp:81
+msgid "Length/Values:"
+msgstr "Pituus/arvot:"
+
+#: dialogs/umlentityattributedialog.cpp:84
+msgid "&Auto increment"
+msgstr "&Automaattilisäys"
+
+#: dialogs/umlentityattributedialog.cpp:88
+msgid "Allow &null"
+msgstr "Salli &null"
+
+#: dialogs/umlentityattributedialog.cpp:92
+msgid "Attributes:"
+msgstr "Attribuutit"
+
+#: dialogs/umlentityattributedialog.cpp:108
+msgid "Indexing"
+msgstr "Indeksointi"
+
+#: dialogs/umlentityattributedialog.cpp:112
+msgid "&None"
+msgstr "&Ei mikään"
+
+#: dialogs/umlentityattributedialog.cpp:115
+msgid "&Primary"
+msgstr "&Pää"
+
+#: dialogs/umlentityattributedialog.cpp:118
+msgid "&Index"
+msgstr "&Indeksoi"
+
+#: dialogs/umlentityattributedialog.cpp:121
+msgid "&Unique"
+msgstr "&Yksilöllinen"
+
+#: dialogs/umlentityattributedialog.cpp:184
+msgid "You have entered an invalid entity attribute name."
+msgstr "Olet antanut epäkelvon attribuutin nimen."
+
+#: dialogs/umlentityattributedialog.cpp:185
+msgid "Entity Attribute Name Invalid"
+msgstr "Attribuutin arvo epäkelpo"
+
+#: dialogs/umlentityattributedialog.cpp:192
+msgid ""
+"The entity attribute name you have chosen is already being used in this "
+"operation."
+msgstr "Valitsemasi attribuutin nimi on jo käytössä tässä toiminnossa."
+
+#: dialogs/umlentityattributedialog.cpp:193
+msgid "Entity Attribute Name Not Unique"
+msgstr "Attribuutin nimi ei ole yksilöllinen"
+
+#: dialogs/diagramprintpage.cpp:35
+msgid "&Diagrams"
+msgstr "&Diagrammit"
+
+#: dialogs/diagramprintpage.cpp:40
+msgid "Filter"
+msgstr "Suodatin"
+
+#: dialogs/diagramprintpage.cpp:48
+msgid "&Current diagram"
+msgstr "&Käytössäoleva kaavio"
+
+#: dialogs/diagramprintpage.cpp:53
+msgid "&All diagrams"
+msgstr "K&aikki diagrammit"
+
+#: dialogs/diagramprintpage.cpp:57
+msgid "&Select diagrams"
+msgstr "Valit&se kaaviot"
+
+#: dialogs/diagramprintpage.cpp:61
+msgid "&Type of diagram"
+msgstr "Diagrammin &tyyppi"
+
+#: dialogs/diagramprintpage.cpp:65
+msgid "Selection"
+msgstr "Valinta"
+
+#: dialogs/diagramprintpage.cpp:93 dialogs/diagramprintpage.cpp:204
+msgid "Collaboration"
+msgstr "Yhteistyö"
+
+#: dialogs/diagramprintpage.cpp:94 dialogs/diagramprintpage.cpp:200
+msgid "Sequence"
+msgstr "Sekvenssi"
+
+#: dialogs/diagramprintpage.cpp:98 dialogs/diagramprintpage.cpp:212
+msgid "Deployment"
+msgstr "Sijoittelu"
+
+#: dialogs/diagramprintpage.cpp:111 umldoc.cpp:1918
+msgid "kde-uml-Diagram"
+msgstr "KDE-UML-Kaavio"
+
+#: dialogs/diagramprintpage.cpp:135
+msgid "No diagrams selected."
+msgstr "Kaaviota ei ole valittu."
+
+#: dialogs/assocrolepage.cpp:50
+msgid "Role A Properties"
+msgstr "Roolin A ominaisuudet"
+
+#: dialogs/assocrolepage.cpp:51
+msgid "Role B Properties"
+msgstr "Roolin B ominaisuudet"
+
+#: dialogs/assocrolepage.cpp:68
+msgid "Role A Visibility"
+msgstr "Roolin A näkyvyys"
+
+#: dialogs/assocrolepage.cpp:69
+msgid "Role B Visibility"
+msgstr "Roolin B näkyvyys"
+
+#: dialogs/assocrolepage.cpp:70
+msgid "Role A Changeability"
+msgstr "Roolin A muunneltavuus"
+
+#: dialogs/assocrolepage.cpp:71
+msgid "Role B Changeability"
+msgstr "Roolin B muunneltavuus"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 59
+#: dialogs/assocrolepage.cpp:93 dialogs/assocrolepage.cpp:152 rc.cpp:486
+#, no-c-format
+msgid "Rolename:"
+msgstr "Roolin nimi:"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 77
+#: dialogs/assocrolepage.cpp:99 dialogs/assocrolepage.cpp:158 rc.cpp:489
+#, fuzzy, no-c-format
+msgid "Multiplicity:"
+msgstr "Lukumäärä"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 129
+#: dialogs/assocrolepage.cpp:106 dialogs/assocrolepage.cpp:166
+#: dialogs/settingsdlg.cpp:259 dialogs/settingsdlg.cpp:267 rc.cpp:120
+#: rc.cpp:138 rc.cpp:177 rc.cpp:195 rc.cpp:510
+#, no-c-format
+msgid "Public"
+msgstr "Julkinen"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 134
+#: dialogs/assocrolepage.cpp:109 dialogs/assocrolepage.cpp:169
+#: dialogs/settingsdlg.cpp:260 dialogs/settingsdlg.cpp:268 rc.cpp:123
+#: rc.cpp:141 rc.cpp:180 rc.cpp:198 rc.cpp:513
+#, no-c-format
+msgid "Private"
+msgstr "Yksityinen"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 139
+#: dialogs/assocrolepage.cpp:112 dialogs/assocrolepage.cpp:172
+#: dialogs/settingsdlg.cpp:261 dialogs/settingsdlg.cpp:269 rc.cpp:126
+#: rc.cpp:144 rc.cpp:183 rc.cpp:201 rc.cpp:516
+#, no-c-format
+msgid "Protected"
+msgstr "Suojattu"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 194
+#: dialogs/assocrolepage.cpp:115 dialogs/assocrolepage.cpp:175 rc.cpp:519
+#, fuzzy, no-c-format
+msgid "Implementation"
+msgstr "Toteutus"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 141
+#: dialogs/assocrolepage.cpp:132 dialogs/assocrolepage.cpp:192 rc.cpp:504
+#, no-c-format
+msgid "Changeable"
+msgstr "Muutettavissa"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 133
+#: dialogs/assocrolepage.cpp:135 dialogs/assocrolepage.cpp:195 rc.cpp:501
+#, no-c-format
+msgid "Frozen"
+msgstr "Jäädytetty"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 125
+#: dialogs/assocrolepage.cpp:138 dialogs/assocrolepage.cpp:198 rc.cpp:498
+#, no-c-format
+msgid "Add only"
+msgstr "Lisää vain"
+
+#: dialogs/umlwidgetcolorpage.cpp:58
+msgid "&Line:"
+msgstr "&Rivi:"
+
+#: dialogs/umlwidgetcolorpage.cpp:68
+msgid "&Fill:"
+msgstr "Täyte:"
+
+#: dialogs/umlwidgetcolorpage.cpp:75
+msgid "D&efault"
+msgstr "Ol&etus"
+
+#: dialogs/umlwidgetcolorpage.cpp:78
+msgid "&Use fill"
+msgstr "&Käytä täytettä"
+
+#: dialogs/umltemplatedialog.cpp:36
+msgid "Template Properties"
+msgstr "Mallin ominaisuudet"
+
+#: dialogs/umltemplatedialog.cpp:128
+msgid "You have entered an invalid template name."
+msgstr "Olet antanut epäkelvon mallin nimen."
+
+#: dialogs/umltemplatedialog.cpp:129
+msgid "Template Name Invalid"
+msgstr "Epäkelpo mallin nimi"
+
+#: dialogs/umltemplatedialog.cpp:138
+msgid ""
+"The template parameter name you have chosen is already being used in this "
+"operation."
+msgstr ""
+"Valitsemasi mallipohjan parametrin nimi on jo käytössä tässä toiminnossa."
+
+#: dialogs/umltemplatedialog.cpp:139
+msgid "Template Name Not Unique"
+msgstr "Mallipohjan nimi ei ole yksilöllinen"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 90
+#: dialogs/exportallviewsdialog.cpp:51 rc.cpp:463
+#, no-c-format
+msgid "The format that the images will be exported to"
+msgstr "Vietävän kuvan muoto"
+
+#: dialogs/selectopdlg.cpp:30 dialogs/selectopdlg.cpp:35
+msgid "Select Operation"
+msgstr "Valitse toiminto"
+
+#: dialogs/selectopdlg.cpp:43
+msgid "Sequence number:"
+msgstr "Sekvenssin numero:"
+
+#: dialogs/selectopdlg.cpp:46
+msgid "Class operation:"
+msgstr "Luokkatoiminto:"
+
+#: dialogs/selectopdlg.cpp:54
+msgid "Custom operation:"
+msgstr "Oma toiminto:"
+
+#: dialogs/notedialog.cpp:25
+msgid "Note Documentation"
+msgstr ""
+
+#: dialogs/pkgcontentspage.cpp:29
+msgid "Contained Items"
+msgstr "Sisällytetyt osat"
+
+#: dialogs/assocpropdlg.cpp:39
+msgid "Association Properties"
+msgstr "Assosiaation ominaisuudet"
+
+#: dialogs/assocpropdlg.cpp:94
+msgid "Roles"
+msgstr "Roolit"
+
+#: dialogs/assocpropdlg.cpp:94
+msgid "Role Settings"
+msgstr "Roolin asetukset"
+
+#: dialogs/assocpropdlg.cpp:112
+msgid "Association font"
+msgstr "Assosiaation fontti"
+
+#: dialogs/settingsdlg.cpp:30
+msgid "Umbrello Setup"
+msgstr "Umbrellon asetukset"
+
+#: dialogs/settingsdlg.cpp:47
+msgid "User Interface"
+msgstr "Käyttöliittymä"
+
+#: dialogs/settingsdlg.cpp:47
+msgid "User Interface Settings"
+msgstr "Käyttöliittymän asetukset"
+
+#: dialogs/settingsdlg.cpp:54
+msgid "Line color:"
+msgstr "Rivin väri:"
+
+#: dialogs/settingsdlg.cpp:60
+msgid "D&efault Color"
+msgstr "Ol&etusväri"
+
+#: dialogs/settingsdlg.cpp:63
+msgid "Fill color:"
+msgstr "Täyteväri:"
+
+#: dialogs/settingsdlg.cpp:69
+msgid "De&fault Color"
+msgstr "Oletus&väri"
+
+#: dialogs/settingsdlg.cpp:73
+msgid "Line width:"
+msgstr "Rivinpituus:"
+
+#: dialogs/settingsdlg.cpp:81
+msgid "D&efault Width"
+msgstr "Oletus&pituus"
+
+#: dialogs/settingsdlg.cpp:86
+msgid "&Use fill color"
+msgstr "Käytä täyteväriä olet&uksena"
+
+#: dialogs/settingsdlg.cpp:108
+msgid "Enable undo"
+msgstr "Salli peruutukset"
+
+#: dialogs/settingsdlg.cpp:112
+#, fuzzy
+msgid "Use tabbed diagrams"
+msgstr "Käytä välilehtiä kaavioisssa"
+
+#: dialogs/settingsdlg.cpp:116
+msgid "Use new C++/Java/Ruby generators"
+msgstr "Käytä uutta C++/Java/Ruby koodigeneraattoria"
+
+#: dialogs/settingsdlg.cpp:120
+msgid "Use angular association lines"
+msgstr "Käytä kulmikkaita assosiaatioviivoja"
+
+#: dialogs/settingsdlg.cpp:126
+msgid "Autosave"
+msgstr "Automaattinen talletus"
+
+#: dialogs/settingsdlg.cpp:132
+msgid "E&nable autosave"
+msgstr "Salli automaattin&en talletus"
+
+#: dialogs/settingsdlg.cpp:136
+msgid "Select auto-save time interval (mins):"
+msgstr "Valitse automaattisen talletuksen talletusten aikaväli (minuutteja):"
+
+#: dialogs/settingsdlg.cpp:146
+msgid "Set autosave suffix:"
+msgstr "Aseta automaattisen talletuksen tiedostopääte:"
+
+#: dialogs/settingsdlg.cpp:148
+msgid ""
+""
+"The autosave file will be saved to ~/autosave.xmi if the autosaving occurs "
+"before you have manually saved the file.
"
+"If you've already saved it, the autosave file will be saved in the same "
+"folder as the file and will be named like the file's name, followed by the "
+"suffix specified.
"
+"If the suffix is equal to the suffix of the file you've saved, the autosave "
+"will overwrite your file automatically.
"
+msgstr ""
+
+#: dialogs/settingsdlg.cpp:158
+msgid "Startup"
+msgstr "Aloitus"
+
+#: dialogs/settingsdlg.cpp:164
+msgid "Sta&rtup logo"
+msgstr "&Alkulogo"
+
+#: dialogs/settingsdlg.cpp:168
+msgid "&Tip of the day"
+msgstr "Päivän vihjee&t"
+
+#: dialogs/settingsdlg.cpp:172
+msgid "&Load last project"
+msgstr "&Lataa viimeiksitallennettu projekti"
+
+#: dialogs/settingsdlg.cpp:176
+msgid "Start new project with:"
+msgstr "Aloita uusi projekti:"
+
+#: dialogs/settingsdlg.cpp:183
+msgid "No Diagram"
+msgstr "Ei kaaviota"
+
+#: dialogs/settingsdlg.cpp:183
+msgid "Class Diagram"
+msgstr "Luokkakaavio"
+
+#: dialogs/settingsdlg.cpp:184
+msgid "Use Case Diagram"
+msgstr "Käyttötapauskaavio"
+
+#: dialogs/settingsdlg.cpp:184
+msgid "Sequence Diagram"
+msgstr "Sekvenssikaavio"
+
+#: dialogs/settingsdlg.cpp:185
+msgid "Collaboration Diagram"
+msgstr "Yhteistyökaavio"
+
+#: dialogs/settingsdlg.cpp:185
+msgid "State Diagram"
+msgstr "Tilakaavio"
+
+#: dialogs/settingsdlg.cpp:186
+msgid "Activity Diagram"
+msgstr "Aktiviteettikaavio"
+
+#: dialogs/settingsdlg.cpp:186
+msgid "Component Diagram"
+msgstr "Komponenttikaavio"
+
+#: dialogs/settingsdlg.cpp:187
+msgid "Deployment Diagram"
+msgstr "Sijoittelukaavio"
+
+#: dialogs/settingsdlg.cpp:210
+msgid "Class Settings"
+msgstr "Luokka-asetukset"
+
+#: dialogs/settingsdlg.cpp:217
+msgid "Show &visibility"
+msgstr "Näytä näky&vyys"
+
+#: dialogs/settingsdlg.cpp:221
+msgid "Show attributes"
+msgstr "Näytä attribuutit"
+
+#: dialogs/settingsdlg.cpp:225
+msgid "Show operations"
+msgstr "Näytä toiminnot"
+
+#: dialogs/settingsdlg.cpp:229
+msgid "Show stereot&ype"
+msgstr "Näytä stereot&ypia"
+
+#: dialogs/settingsdlg.cpp:233
+msgid "Show attribute signature"
+msgstr "Näytä attribuutin allekirjoitus"
+
+#: dialogs/settingsdlg.cpp:238
+msgid "Show package"
+msgstr "Näytä pakkaus"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 146
+#: dialogs/settingsdlg.cpp:242 rc.cpp:417
+#, no-c-format
+msgid "Show operation signature"
+msgstr "Näytä metodin allekirjoitus"
+
+#: dialogs/settingsdlg.cpp:247
+msgid "Starting Scope"
+msgstr "Oletusnäkyvyys"
+
+#: dialogs/settingsdlg.cpp:252
+msgid "Default attribute scope:"
+msgstr "Oletusnäkyvyys attribuutille:"
+
+#: dialogs/settingsdlg.cpp:255
+msgid "Default operation scope:"
+msgstr "Oletusnäkyvyys toiminnolle:"
+
+#: dialogs/settingsdlg.cpp:294
+msgid "Code Generation"
+msgstr "Koodinluonti"
+
+#: dialogs/settingsdlg.cpp:294
+msgid "Code Generation Settings"
+msgstr "Koodinluonnin asetukset"
+
+#: dialogs/settingsdlg.cpp:301
+msgid "Code Viewer Settings"
+msgstr "Koodin näytön asetukset"
+
+#: dialogs/defaultcodegenpolicypage.cpp:36
+msgid "No Options Available.
"
+msgstr "Ei optioita saatavilla.
"
+
+#: dialogs/classoptionspage.cpp:59 dialogs/classoptionspage.cpp:120
+#: listpopupmenu.cpp:699
+msgid "Show"
+msgstr "Näytä"
+
+#: dialogs/classoptionspage.cpp:66 dialogs/classoptionspage.cpp:126
+msgid "Operatio&ns"
+msgstr "Toimi&nnot"
+
+#: dialogs/classoptionspage.cpp:70 dialogs/classoptionspage.cpp:143
+msgid "&Visibility"
+msgstr "Näky&vyys"
+
+#: dialogs/classoptionspage.cpp:79 dialogs/classoptionspage.cpp:130
+msgid "O&peration signature"
+msgstr "&Metodin allekirjoitus"
+
+#: dialogs/classoptionspage.cpp:83 dialogs/classoptionspage.cpp:147
+msgid "Pac&kage"
+msgstr "Pa&kkaus"
+
+#: dialogs/classoptionspage.cpp:90 dialogs/classoptionspage.cpp:135
+msgid "Att&ributes"
+msgstr "Att&ribuutit"
+
+#: dialogs/classoptionspage.cpp:94 dialogs/classoptionspage.cpp:151
+msgid "Stereot&ype"
+msgstr "Stereot&yyppi"
+
+#: dialogs/classoptionspage.cpp:98 dialogs/classoptionspage.cpp:139
+msgid "Attr&ibute signature"
+msgstr "Attr&ibuutin allekirjoitus"
+
+#: dialogs/classoptionspage.cpp:108
+msgid "Draw as circle"
+msgstr "Piirrä ympyränä"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 61
+#: dialogs/assocgenpage.cpp:67 rc.cpp:408
+#, no-c-format
+msgid "Name:"
+msgstr "Nimi:"
+
+#: dialogs/assocgenpage.cpp:80
+msgid "Type:"
+msgstr "Tyyppi:"
+
+#: umllistview.cpp:348
+msgid "Externalize Folder"
+msgstr ""
+
+#: docgenerators/docbookgenerator.cpp:99 umldoc.cpp:556 umldoc.cpp:565
+#: umldoc.cpp:585 umldoc.cpp:620 umldoc.cpp:633 umllistview.cpp:384
+#: umlviewimageexportermodel.cpp:158
+#, c-format
+msgid "There was a problem saving file: %1"
+msgstr "Tiedostoa %1 ei pystytty kirjoittamaan"
+
+#: docgenerators/docbookgenerator.cpp:99 umldoc.cpp:556 umldoc.cpp:565
+#: umldoc.cpp:585 umldoc.cpp:620 umldoc.cpp:633 umldoc.cpp:641
+#: umllistview.cpp:385
+msgid "Save Error"
+msgstr "Tallennusvirhe"
+
+#: umllistview.cpp:416
+msgid "Enter Model Name"
+msgstr "Anna mallin nimi"
+
+#: umllistview.cpp:417
+msgid "Enter the new name of the model:"
+msgstr "Anna mallin uusi nimi:"
+
+#: umllistview.cpp:1007
+msgid "Views"
+msgstr "Näkymät"
+
+#: umllistview.cpp:1907
+msgid ""
+"The name you entered was invalid.\n"
+"Creation process has been canceled."
+msgstr ""
+"Antamasi nimi on epäkelpo.\n"
+"Luontia ei ole tehty."
+
+#: umllistview.cpp:1908 umllistviewitem.cpp:479
+msgid "Name Not Valid"
+msgstr "Nimi on epäkelpo."
+
+#: umldoc.cpp:1067 umllistview.cpp:1917
+msgid ""
+"The name you entered was not unique.\n"
+"Is this what you wanted?"
+msgstr ""
+"Antamasi nimi ei ole yksilöllinen.\n"
+"Tarkoititko tätä?"
+
+#: umldoc.cpp:1068 umllistview.cpp:1918
+msgid "Use Name"
+msgstr "Käyttönimi"
+
+#: umldoc.cpp:1068 umllistview.cpp:1918
+msgid "Enter New Name"
+msgstr "Anna uusi nimi"
+
+#: umllistview.cpp:1924 umllistview.cpp:2161
+msgid ""
+"The name you entered was not unique!\n"
+"Creation process has been canceled."
+msgstr ""
+"Antamasi nimi ei ollut yksilöllinen!\n"
+"Luonti on keskeytetty."
+
+#: umllistview.cpp:2119 umllistview.cpp:2136 umllistview.cpp:2151
+msgid "Creation canceled"
+msgstr "Luonti keskeytetty"
+
+#: umllistview.cpp:2339
+msgid "Loading listview..."
+msgstr "Lataa luettelonäkymää..."
+
+#: umllistview.cpp:2671
+msgid "The folder must be emptied before it can be deleted."
+msgstr "Kansio pitää olla tyhjä ennen poistamista."
+
+#: umllistview.cpp:2672
+msgid "Folder Not Empty"
+msgstr "Kansio ei ole tyhjä"
+
+#: enumliteral.cpp:65 floatingtextwidget.cpp:111 object_factory.cpp:153
+#: umldoc.cpp:976 umldoc.cpp:1012 umldoc.cpp:1033 umldoc.cpp:1059
+msgid "Name"
+msgstr "Nimi"
+
+#: floatingtextwidget.cpp:112
+msgid "Enter operation name:"
+msgstr "Anna metodin nimi:"
+
+#: associationwidget.cpp:2367 floatingtextwidget.cpp:162
+msgid "Enter role name:"
+msgstr "Anna roolin nimi:"
+
+#: associationwidget.cpp:2329 floatingtextwidget.cpp:164
+msgid "Enter multiplicity:"
+msgstr "Anna lukumäärä:"
+
+#: associationwidget.cpp:2347 floatingtextwidget.cpp:171
+msgid "Enter association name:"
+msgstr "Anna assosiaation nimi:"
+
+#: floatingtextwidget.cpp:173 floatingtextwidget.cpp:264
+msgid "Enter new text:"
+msgstr "Anna uusi teksti:"
+
+#: floatingtextwidget.cpp:175
+msgid "ERROR"
+msgstr "VIRHE"
+
+#: floatingtextwidget.cpp:264
+msgid "Change Text"
+msgstr "Vaihda teksti"
+
+#: codegenerator.cpp:473
+msgid ""
+"Cannot open file %1 for writing. Please make sure the folder exists and you "
+"have permissions to write to it."
+msgstr ""
+"Tiedostoa %1 ei voitu avata kirjoittamista varten. Varmista, että kansio on "
+"olemassa ja sinulla on kirjoitusoikeudet siihen."
+
+#: codegenerator.cpp:473
+msgid "Cannot Open File"
+msgstr "Tiedosta ei voitu avata"
+
+#: codegenerator.cpp:531 codegenerators/simplecodegenerator.cpp:128
+msgid ""
+"Cannot create the folder:\n"
+msgstr ""
+"Kansiota ei voitu luoda:\n"
+
+#: codegenerator.cpp:532 codegenerators/simplecodegenerator.cpp:129
+msgid ""
+"\n"
+"Please check the access rights"
+msgstr ""
+"\n"
+"Tarkista lukuoikeutesi"
+
+#: codegenerator.cpp:533 codegenerators/simplecodegenerator.cpp:130
+msgid "Cannot Create Folder"
+msgstr "Kansiota ei voitu luoda"
+
+#: umlviewimageexporter.cpp:46
+msgid "Exporting view..."
+msgstr "Vie näkymää..."
+
+#: umlviewimageexporter.cpp:50
+msgid ""
+"An error happened when exporting the image:\n"
+msgstr ""
+"Kuvan viennissä tapahtui virhe:\n"
+
+#: codeimport/classimport.cpp:39 uml.cpp:376 uml.cpp:483 uml.cpp:660
+#: uml.cpp:688 uml.cpp:712 uml.cpp:722 uml.cpp:753 uml.cpp:758 uml.cpp:783
+#: uml.cpp:793 uml.cpp:814 uml.cpp:819 uml.cpp:832 uml.cpp:839 uml.cpp:853
+#: uml.cpp:874 uml.cpp:887 umlviewimageexporter.cpp:52
+#: umlviewimageexporterall.cpp:73
+msgid "Ready."
+msgstr "Valmis."
+
+#: umlviewimageexporter.cpp:66
+msgid ""
+"The selected file %1 exists.\n"
+"Do you want to overwrite it?"
+msgstr ""
+"Valittu tiedosto %1 on jo olemassa.\n"
+"Haluatko korvata sen?"
+
+#: umlviewimageexporter.cpp:67
+msgid "File Already Exists"
+msgstr "Tiedosto on jo olemassa"
+
+#: aligntoolbar.cpp:40
+msgid "Align Left"
+msgstr "Asettelu vasemmalle"
+
+#: aligntoolbar.cpp:41
+msgid "Align Right"
+msgstr "Asettelu oikealle"
+
+#: aligntoolbar.cpp:42
+msgid "Align Top"
+msgstr "Asettelu ylös"
+
+#: aligntoolbar.cpp:43
+msgid "Align Bottom"
+msgstr "Asettelu alas"
+
+#: aligntoolbar.cpp:44
+msgid "Align Vertical Middle"
+msgstr "Asettelu pystysuunnassa keskelle"
+
+#: aligntoolbar.cpp:45
+msgid "Align Horizontal Middle"
+msgstr "Asettelu vaakatasossa keskelle"
+
+#: aligntoolbar.cpp:46
+#, fuzzy
+msgid "Align Vertical Distribute"
+msgstr "Asettelu pystysuunnassa keskelle"
+
+#: aligntoolbar.cpp:47
+#, fuzzy
+msgid "Align Horizontal Distribute"
+msgstr "Asettelu vaakatasossa keskelle"
+
+#: aligntoolbar.cpp:383
+msgid ""
+"For alignment you have to select at least 2 objects like classes or actors. You "
+"can not align associations."
+msgstr ""
+"Kohdistukseen on valittava vähintään 2 kohdetta kuten luokkia tai aktoreita. Et "
+"voi kohdistaa assosiaatioita."
+
+#: enumliteral.cpp:65 object_factory.cpp:153 stereotype.cpp:76 umldoc.cpp:976
+#: umldoc.cpp:1012 umldoc.cpp:1033 umldoc.cpp:1059
+msgid "Enter name:"
+msgstr "Anna nimi:"
+
+#: classifier.cpp:294 classifier.cpp:522 entity.cpp:78 enum.cpp:76
+#: object_factory.cpp:158 umldoc.cpp:1037 umldoc.cpp:1063
+msgid "That is an invalid name."
+msgstr "Epäkelpo nimi:"
+
+#: object_factory.cpp:164
+msgid ""
+"This is a reserved keyword for the language of the configured code generator."
+msgstr "Tämä on koodigeneraattorin varattu sana."
+
+#: object_factory.cpp:165
+msgid "Reserved Keyword"
+msgstr "Varattu sana"
+
+#: classifier.cpp:296 classifier.cpp:524 entity.cpp:80 object_factory.cpp:169
+#: umldoc.cpp:1043 umldoc.cpp:1073
+msgid "That name is already being used."
+msgstr "Tämä nimi on jo käytössä."
+
+#: classifier.cpp:296 classifier.cpp:524 entity.cpp:80 object_factory.cpp:170
+#: umldoc.cpp:998 umldoc.cpp:1025 umldoc.cpp:1043 umldoc.cpp:1073
+msgid "Not a Unique Name"
+msgstr "Tämä nimi ei ole yksilöllinen"
+
+#: umlviewimageexportermodel.cpp:126
+#, c-format
+msgid "Can not create directory: %1"
+msgstr "Ei voitu luoda kansiota: %1"
+
+#: umlviewimageexportermodel.cpp:145
+msgid "Can not save an empty diagram"
+msgstr "Ei voi tallettaa tyhjää kaaviota"
+
+#: umlviewimageexportermodel.cpp:151
+#, c-format
+msgid "A problem occured while saving diagram in %1"
+msgstr "Tapahtui virhe talletettaessa kaaviota kohteeseen %1"
+
+#: model_utils.cpp:244
+msgid "new_actor"
+msgstr "uusi_aktori"
+
+#: model_utils.cpp:246
+msgid "new_usecase"
+msgstr "uusi_käyttötapaus"
+
+#: model_utils.cpp:248
+msgid "new_package"
+msgstr "uusi_pakkaus"
+
+#: model_utils.cpp:250
+msgid "new_component"
+msgstr "uusi_komponentti"
+
+#: model_utils.cpp:252
+msgid "new_node"
+msgstr "uusi_paketti"
+
+#: model_utils.cpp:254
+msgid "new_artifact"
+msgstr ""
+
+#: model_utils.cpp:256
+msgid "new_interface"
+msgstr "uusi_käyttöliittymä"
+
+#: model_utils.cpp:258
+msgid "new_datatype"
+msgstr "uusi_tietotyyppi"
+
+#: model_utils.cpp:260
+msgid "new_enum"
+msgstr "uusi_lueteltu_tyyppi"
+
+#: model_utils.cpp:262
+msgid "new_entity"
+msgstr "uusi_entiteetti"
+
+#: model_utils.cpp:264
+#, fuzzy
+msgid "new_folder"
+msgstr "uusi_paketti"
+
+#: model_utils.cpp:266 umlcanvasobject.cpp:147
+msgid "new_association"
+msgstr "uusi_assosiaatio"
+
+#: model_utils.cpp:268
+msgid "new_object"
+msgstr "uusi_objekti"
+
+#: model_utils.cpp:559
+msgid "Empty"
+msgstr "Tyhjä"
+
+#: model_utils.cpp:559
+msgid "Malformed argument"
+msgstr "Huonostimuotoiltu argumentti"
+
+#: model_utils.cpp:560
+msgid "Unknown argument type"
+msgstr "Tuntematon argumentin tyyppi"
+
+#: model_utils.cpp:560
+msgid "Illegal method name"
+msgstr "Epäkelpo metodinnimi"
+
+#: model_utils.cpp:561
+msgid "Unknown return type"
+msgstr "Tuntematon paluuarvon tyyppi"
+
+#: model_utils.cpp:561
+msgid "Unspecified error"
+msgstr "Määrittelemätön virhe"
+
+#: codeimport/classimport.cpp:34
+msgid "Importing file: %1 Progress: %2/%3"
+msgstr "Tuodaan tiedostoa: %1 Edistyminen: %2/%3"
+
+#: codeimport/import_utils.cpp:181
+msgid "Is the scope %1 a namespace or a class?"
+msgstr "Onko näkyvyys %1 nimiavaruus vai luokka?"
+
+#: codeimport/import_utils.cpp:182
+msgid "C++ Import Requests Your Help"
+msgstr "C++ tuonti pyytää apuasi"
+
+#: codeimport/import_utils.cpp:183
+msgid "Namespace"
+msgstr "Nimiavaruus"
+
+#: codeimport/kdevcppparser/parser.cpp:138
+msgid ""
+msgstr ""
+
+#: codeimport/kdevcppparser/parser.cpp:323
+#: codeimport/kdevcppparser/parser.cpp:2679
+#: codeimport/kdevcppparser/parser.cpp:2878
+#: codeimport/kdevcppparser/parser.cpp:2884
+msgid "expression expected"
+msgstr "lauseke puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:598
+msgid "Declaration syntax error"
+msgstr "Määrittelyn syntaksivirhe"
+
+#: codeimport/kdevcppparser/parser.cpp:643
+#: codeimport/kdevcppparser/parser.cpp:2770
+#: codeimport/kdevcppparser/parser.cpp:3224
+msgid "} expected"
+msgstr "} puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:684
+msgid "namespace expected"
+msgstr "nimiavaruus puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:688
+msgid "{ expected"
+msgstr "{ puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:761
+#: codeimport/kdevcppparser/parser.cpp:2965
+msgid "Namespace name expected"
+msgstr "Nimiavaruuden nimi puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:869
+msgid "Need a type specifier to declare"
+msgstr "Tarvitsee selvitettävän tyypin tarkentimen"
+
+#: codeimport/kdevcppparser/parser.cpp:938
+msgid "expected a declaration"
+msgstr "määrittely puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:1212
+#: codeimport/kdevcppparser/parser.cpp:2178
+msgid "Constant expression expected"
+msgstr "Vakiolauseke puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:1281
+#: codeimport/kdevcppparser/parser.cpp:1378
+msgid "')' expected"
+msgstr "')' puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:1451
+#: codeimport/kdevcppparser/parser.cpp:1914
+#: codeimport/kdevcppparser/parser.cpp:2392
+msgid "} missing"
+msgstr "} puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2074
+msgid "Member initializers expected"
+msgstr ""
+
+#: codeimport/kdevcppparser/parser.cpp:2235
+msgid "Base class specifier expected"
+msgstr "Yliluokan määrittely puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2260
+msgid "Initializer clause expected"
+msgstr "Alustuslauseke puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2303
+msgid "Identifier expected"
+msgstr "Muuttuja puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2337
+msgid "Type id expected"
+msgstr "Tyypin id puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2374
+msgid "Class name expected"
+msgstr "Luokan nimi puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2641
+#: codeimport/kdevcppparser/parser.cpp:2795
+#: codeimport/kdevcppparser/parser.cpp:2835
+#: codeimport/kdevcppparser/parser.cpp:3282
+msgid "condition expected"
+msgstr "ehtolauseke puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2648
+#: codeimport/kdevcppparser/parser.cpp:2670
+#: codeimport/kdevcppparser/parser.cpp:2802
+#: codeimport/kdevcppparser/parser.cpp:2813
+msgid "statement expected"
+msgstr "lause puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:2705
+msgid "for initialization expected"
+msgstr "for alustus puuttuu"
+
+#: codeimport/kdevcppparser/parser.cpp:3273
+msgid "catch expected"
+msgstr "catch puuttuu"
+
+#: codeimport/kdevcppparser/errors.cpp:23
+msgid "Internal Error"
+msgstr "Sisäinen virhe"
+
+#: codeimport/kdevcppparser/errors.cpp:24
+msgid "Syntax Error before '%1'"
+msgstr "Syntaksivirhe ennen %1'"
+
+#: codeimport/kdevcppparser/errors.cpp:25
+msgid "Parse Error before '%1'"
+msgstr "Jäsennysvirhe ennen %1'"
+
+#: _translatorinfo.cpp:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr "Ilpo Kantonen"
+
+#: _translatorinfo.cpp:3
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr "ilpo@iki.fi"
+
+#: main.cpp:32 main.cpp:93
+msgid "Umbrello UML Modeller"
+msgstr "Umbrello UML mallintaja"
+
+#: main.cpp:40
+msgid "File to open"
+msgstr "Avattava tiedosto"
+
+#: main.cpp:41
+msgid "export diagrams to extension and exit"
+msgstr ""
+
+#: main.cpp:42
+msgid "the local directory to save the exported diagrams in"
+msgstr ""
+
+#: main.cpp:42
+msgid "the directory of the file"
+msgstr "tiedoston kansio"
+
+#: main.cpp:43
+msgid ""
+"keep the tree structure used to store the views in the document in the target "
+"directory"
+msgstr ""
+
+#: main.cpp:95
+msgid "(c) 2001 Paul Hensgen, (c) 2002-2006 Umbrello UML Modeller Authors"
+msgstr "(c) 2001 Paul Hensgen, (c) 2002-2006 Umbrello UML mallintajan tekijät"
+
+#: docgenerators/main.cpp:67 main.cpp:98
+msgid "Umbrello UML Modeller Authors"
+msgstr "Umbrello UML mallintajan tekijät"
+
+#: docgenerators/main.cpp:41 docgenerators/main.cpp:62
+msgid "Umbrello UML Modeller autonomous code generator"
+msgstr "Umbrello UML mallintajan automaattinen koodin kehittäjä"
+
+#: docgenerators/main.cpp:47
+msgid "File to transform"
+msgstr "Muunnettava tiedosto"
+
+#: docgenerators/main.cpp:48
+msgid "The XSLT file to use"
+msgstr "Käytettävä XSLT-tiedosto"
+
+#: docgenerators/main.cpp:64
+msgid ""
+"(c) 2006 Gael de Chalendar (aka Kleag), (c) 2002-2006 Umbrello UML Modeller "
+"Authors"
+msgstr ""
+"(c) 2006 Gael de Chalendar (aka Kleag), (c) 2002-2006 Umbrello UML mallintajan "
+"tekijät"
+
+#: docgenerators/docbookgenerator.cpp:70 umlviewimageexporterall.cpp:58
+msgid "Exporting all views..."
+msgstr "Vie kaikki näkymät..."
+
+#: docgenerators/docbookgenerator.cpp:77 docgenerators/docbookgenerator.cpp:83
+#: umlviewimageexporterall.cpp:64 umlviewimageexporterall.cpp:70
+msgid "Some errors happened when exporting the images:"
+msgstr "Joitakin virheitä tapahtui kuvien viennissä:"
+
+#: association.cpp:84
+msgid "Generalization"
+msgstr "Yleistäminen"
+
+#: association.cpp:88
+msgid "Self Association"
+msgstr ""
+
+#: association.cpp:89
+msgid "Collaboration Message"
+msgstr "Yhteistyöviesti"
+
+#: association.cpp:90
+msgid "Sequence Message"
+msgstr "Sekvenssiviesti"
+
+#: association.cpp:91
+msgid "Collaboration Self Message"
+msgstr ""
+
+#: association.cpp:92
+msgid "Sequence Self Message"
+msgstr ""
+
+#: association.cpp:95
+msgid "Realization"
+msgstr "Toteuttaminen"
+
+#: association.cpp:96
+msgid "Uni Association"
+msgstr "Uni assosiaatio"
+
+#: umldoc.cpp:82 umldoc.cpp:1518
+msgid "UML Model"
+msgstr "Umbrello UML mallintaja"
+
+#: umldoc.cpp:106
+msgid "Logical View"
+msgstr "Loogiset kaaviot"
+
+#: umldoc.cpp:107
+msgid "Use Case View"
+msgstr "Käyttötapaukset"
+
+#: umldoc.cpp:108
+msgid "Component View"
+msgstr "Komponentit"
+
+#: umldoc.cpp:109
+msgid "Deployment View"
+msgstr "Sijoittelunäkymä"
+
+#: umldoc.cpp:110
+msgid "Entity Relationship Model"
+msgstr "Entiteettien suhdemalli"
+
+#: umldoc.cpp:117 umldoc.cpp:293
+msgid "Datatypes"
+msgstr "Tietotyypit"
+
+#: umldoc.cpp:229
+msgid ""
+"The current file has been modified.\n"
+"Do you want to save it?"
+msgstr ""
+"Käytetty mallinnus on muuttunut.\n"
+"Haluatko tallentaa sen?"
+
+#: umldoc.cpp:355
+msgid "The file %1 does not exist."
+msgstr "Tiedostoa %1 ei löytynyt."
+
+#: folder.cpp:289 folder.cpp:293 umldoc.cpp:355 umldoc.cpp:380 umldoc.cpp:422
+#: umldoc.cpp:434 umldoc.cpp:448 umldoc.cpp:461 umldoc.cpp:472 umldoc.cpp:488
+msgid "Load Error"
+msgstr "Tiedostonlukuvirhe"
+
+#: umldoc.cpp:380
+msgid "The file %1 seems to be corrupted."
+msgstr "Tiedosto %1 näyttää vioittuneelta."
+
+#: umldoc.cpp:422 umldoc.cpp:434 umldoc.cpp:461
+#, c-format
+msgid "There was no XMI file found in the compressed file %1."
+msgstr "Pakatussa tiedostossa %1 ei ollut XMI-tiedostoa."
+
+#: umldoc.cpp:448
+#, c-format
+msgid "There was a problem loading the extracted file: %1"
+msgstr "Paketista avattua tiedostoa %1 ei pystytty lukemaan:"
+
+#: umldoc.cpp:472 umldoc.cpp:488
+#, c-format
+msgid "There was a problem loading file: %1"
+msgstr "Tiedostoa %1 ei pystytty lukemaan"
+
+#: umldoc.cpp:641
+#, c-format
+msgid "There was a problem uploading file: %1"
+msgstr "Tiedoston %1 siirrossa (upload) tapahtui virhe"
+
+#: umldoc.cpp:934
+msgid "use case diagram"
+msgstr "käyttötapauskaavio"
+
+#: umldoc.cpp:936
+msgid "class diagram"
+msgstr "luokkakaavio"
+
+#: umldoc.cpp:938
+msgid "sequence diagram"
+msgstr "sekvenssikaavio"
+
+#: umldoc.cpp:940
+msgid "collaboration diagram"
+msgstr "yhteistyökaavio"
+
+#: umldoc.cpp:942
+msgid "state diagram"
+msgstr "tilakaavio"
+
+#: umldoc.cpp:944
+msgid "activity diagram"
+msgstr "aktiviteettikaavio"
+
+#: umldoc.cpp:946
+msgid "component diagram"
+msgstr "komponenttikaavio"
+
+#: umldoc.cpp:948
+msgid "deployment diagram"
+msgstr "sijoittelukaavio"
+
+#: umldoc.cpp:950
+#, fuzzy
+msgid "entity relationship diagram"
+msgstr "käsitekaavio"
+
+#: umldoc.cpp:984 umldoc.cpp:1017
+msgid "That is an invalid name for a diagram."
+msgstr "Tämä on epäkelpo nimi kaaviolle."
+
+#: umldoc.cpp:998 umldoc.cpp:1025
+msgid "A diagram is already using that name."
+msgstr "Kaavio käyttää jo tätä nimeä."
+
+#: umldoc.cpp:1099
+msgid "Are you sure you want to delete diagram %1?"
+msgstr "Haluatko todella poistaa kaavion %1?"
+
+#: umldoc.cpp:1099
+msgid "Delete Diagram"
+msgstr "Poista kaavio"
+
+#: umldoc.cpp:1573
+msgid "Setting up the document..."
+msgstr "Alustaa dokumenttia..."
+
+#: umldoc.cpp:1600
+msgid "Resolving object references..."
+msgstr "Selvittää objektin referenssit..."
+
+#: umldoc.cpp:1638
+msgid "Loading UML elements..."
+msgstr "Lataa UML-elementtejä..."
+
+#: umldoc.cpp:1811
+msgid "Loading diagrams..."
+msgstr "Lataa diagrammeja..."
+
+#: umldoc.cpp:2104
+#, c-format
+msgid "/autosave%1"
+msgstr "/automaattitallenna%1"
+
+#: umllistviewitem.cpp:372 umllistviewitem.cpp:406 umllistviewitem.cpp:434
+msgid "Rename canceled"
+msgstr "Uudelleennimeäminen keskeytetty"
+
+#: umllistviewitem.cpp:468
+msgid "Renaming an item of listview type %1 is not yet implemented."
+msgstr ""
+
+#: umllistviewitem.cpp:469
+msgid "Function Not Implemented"
+msgstr "Toimintoa ei ole toteutettu"
+
+#: umllistviewitem.cpp:478
+msgid ""
+"The name you entered was invalid.\n"
+"Renaming process has been canceled."
+msgstr ""
+"Antamasi nimi on epäkelpo.\n"
+"Uudelleennimeäminen on keskeytetty."
+
+#: codegenerators/cppcodegenerationform.cpp:36
+msgid "General Options"
+msgstr "Yleisasetukset"
+
+#: codegenerators/cppcodegenerationform.cpp:38
+msgid "Package is a namespace"
+msgstr "Pakkaus on nimiavaruus"
+
+#: codegenerators/cppcodegenerationform.cpp:41
+msgid "Virtual destructors"
+msgstr "Virtuaalihajottimet"
+
+#: codegenerators/cppcodegenerationform.cpp:44
+msgid "Generate empty constructors"
+msgstr "Luo tyhjät koodipohjat muodostimiin"
+
+#: codegenerators/cppcodegenerationform.cpp:47
+msgid "Generate accessor methods"
+msgstr "Luo accessor-metodit"
+
+#: codegenerators/cppcodegenerationform.cpp:50
+msgid "Operations are inline"
+msgstr "Metodit ovat inline-optimoitavia"
+
+#: codegenerators/cppcodegenerationform.cpp:53
+msgid "Accessors are inline"
+msgstr "Aksessorit ovat inline-tyyppiä"
+
+#: codegenerators/cppcodegenerationform.cpp:57
+msgid "Accessors are public"
+msgstr "Aksessorit ovat julkisia"
+
+#: umlcanvasobject.cpp:150
+msgid "new_attribute"
+msgstr "uusi_attribuutti"
+
+#: umlcanvasobject.cpp:153
+msgid "new_template"
+msgstr "uusi_malli"
+
+#: umlcanvasobject.cpp:156
+msgid "new_operation"
+msgstr "uusi_toiminto"
+
+#: umlcanvasobject.cpp:159
+msgid "new_literal"
+msgstr "uusi_literaali"
+
+#: umlcanvasobject.cpp:162
+msgid "new_field"
+msgstr "uusi_kenttä"
+
+#: uml.cpp:179
+msgid "&Export model to DocBook"
+msgstr "Vi&e malli DocBookiksi"
+
+#: uml.cpp:182
+msgid "&Export model to XHTML"
+msgstr "Vi&e malli XHTML:ksi"
+
+#: uml.cpp:186
+msgid "&New Class Wizard..."
+msgstr "Luoka&nluontivelho..."
+
+#: uml.cpp:188
+msgid "&Add Default Datatypes for Active Language"
+msgstr "Lisää oletustietotyypit &aktiiviselle kielelle"
+
+#: uml.cpp:193
+msgid "&Code Generation Wizard..."
+msgstr "Koodin&generointivelho..."
+
+#: uml.cpp:195
+msgid "&Generate All Code"
+msgstr "&Generoi kaikki koodi"
+
+#: uml.cpp:198
+msgid "&Import Classes..."
+msgstr "Tuo luokk&ia..."
+
+#: uml.cpp:201
+msgid "Creates a new document"
+msgstr "Luo uusi dokumentti"
+
+#: uml.cpp:202
+msgid "Opens an existing document"
+msgstr "Avaa olemassaoleva dokumentti"
+
+#: uml.cpp:203
+msgid "Opens a recently used file"
+msgstr "Avaa viimeiksi käytettyjä tiedostoja"
+
+#: uml.cpp:204
+msgid "Saves the document"
+msgstr "Tallettaa dokumentin"
+
+#: uml.cpp:205
+msgid "Saves the document as..."
+msgstr "Tallenna dokumentti nimellä..."
+
+#: uml.cpp:206
+msgid "Closes the document"
+msgstr "Sulkee dokumentin"
+
+#: uml.cpp:207
+msgid "Prints out the document"
+msgstr "Tulostaa dokumentin"
+
+#: uml.cpp:208
+msgid "Quits the application"
+msgstr "Poistu ohjelmasta"
+
+#: uml.cpp:209
+msgid "Exports the model to the docbook format"
+msgstr "Vie mallin docbook-muotoon"
+
+#: uml.cpp:210
+msgid "Exports the model to the XHTML format"
+msgstr "Vie mallin XHTML-muotoon"
+
+#: uml.cpp:211
+msgid "Cuts the selected section and puts it to the clipboard"
+msgstr "Leikkaa valitun alueen ja vie sen leikepöydälle"
+
+#: uml.cpp:212
+msgid "Copies the selected section to the clipboard"
+msgstr "Kopioi valitun alueen leikepöydälle"
+
+#: uml.cpp:213
+msgid "Pastes the contents of the clipboard"
+msgstr "Lisää leikepöydän sisällön"
+
+#: uml.cpp:214
+msgid "Set the default program preferences"
+msgstr "Aseta oletusohjelman asetukset"
+
+#: uml.cpp:216
+msgid "Delete &Selected"
+msgstr "Poi&sta valittu"
+
+#: uml.cpp:224
+msgid "&Class Diagram..."
+msgstr "&Luokkakaavio..."
+
+#: uml.cpp:228
+msgid "&Autolayout..."
+msgstr "&Automaattinen asettelu..."
+
+#: uml.cpp:231
+msgid "&Sequence Diagram..."
+msgstr "&Sekvenssikaavio..."
+
+#: uml.cpp:234
+msgid "C&ollaboration Diagram..."
+msgstr "Työryhmäkaavi&o..."
+
+#: uml.cpp:237
+msgid "&Use Case Diagram..."
+msgstr "&Käyttötapauskaavio..."
+
+#: uml.cpp:240
+msgid "S&tate Diagram..."
+msgstr "&Tilakaaviot..."
+
+#: uml.cpp:243
+msgid "&Activity Diagram..."
+msgstr "&Aktiviteettikaaviot..."
+
+#: uml.cpp:246
+msgid "Co&mponent Diagram..."
+msgstr "Ko&mponenttikaavio..."
+
+#: uml.cpp:250
+msgid "&Deployment Diagram..."
+msgstr "&Julkistuskaavio..."
+
+#: uml.cpp:254
+msgid "&Entity Relationship Diagram..."
+msgstr "&Entiteettien suhdekaavio..."
+
+#: uml.cpp:258
+msgid "&Clear Diagram"
+msgstr "Tyhjennä kaavio"
+
+#: uml.cpp:260
+msgid "&Snap to Grid"
+msgstr "A&seta hilaan"
+
+#: uml.cpp:262
+msgid "S&how Grid"
+msgstr "Näytä &hila"
+
+#: uml.cpp:265
+msgid "&Hide Grid"
+msgstr "Piilota &hila"
+
+#: uml.cpp:269
+msgid "&Export as Picture..."
+msgstr "Vi&e kuvana..."
+
+#: uml.cpp:271
+msgid "Export &All Diagrams as Pictures..."
+msgstr "Vie k&aikki kaaviot kuvana..."
+
+#: uml.cpp:286
+msgid "&Zoom Slider"
+msgstr "Syväyssäätö"
+
+#: uml.cpp:289
+#, c-format
+msgid "Z&oom to 100%"
+msgstr "Z&oomaa -> 100%"
+
+#: uml.cpp:295
+msgid "&Move Tab Left"
+msgstr "Siirry vase&mpaan välilehteen"
+
+#: uml.cpp:296
+msgid "&Move Tab Right"
+msgstr "Siirry &oikeaan välilehteen"
+
+#: uml.cpp:308
+msgid "Select Diagram on Left"
+msgstr "Valitse vasen kaavio"
+
+#: uml.cpp:309
+msgid "Select Diagram on Right"
+msgstr "Valitse oikea kaavio"
+
+#: uml.cpp:327
+msgid "&Windows"
+msgstr "&Ikkuna"
+
+#: uml.cpp:347
+#, c-format
+msgid " &33%"
+msgstr " &33%"
+
+#: uml.cpp:348
+#, c-format
+msgid " &50%"
+msgstr " &50%"
+
+#: uml.cpp:349
+#, c-format
+msgid " &75%"
+msgstr " &75%"
+
+#: uml.cpp:350
+#, c-format
+msgid "&100%"
+msgstr "&100%"
+
+#: uml.cpp:351
+#, c-format
+msgid "1&50%"
+msgstr "1&50%"
+
+#: uml.cpp:352
+#, c-format
+msgid "&200%"
+msgstr "&200%"
+
+#: uml.cpp:353
+#, c-format
+msgid "3&00%"
+msgstr "3&00%"
+
+#: uml.cpp:394
+msgid "Diagram Toolbar"
+msgstr "Kaaviotyökalu"
+
+#: uml.cpp:398
+msgid "Alignment Toolbar"
+msgstr "Asettelutyökalu"
+
+#: listpopupmenu.cpp:615 uml.cpp:420
+msgid "Class Diagram..."
+msgstr "Luokkakaavio..."
+
+#: listpopupmenu.cpp:618 uml.cpp:421
+msgid "Sequence Diagram..."
+msgstr "Sekvenssikaavio..."
+
+#: listpopupmenu.cpp:619 uml.cpp:422
+msgid "Collaboration Diagram..."
+msgstr "Yhteistyökaavio..."
+
+#: listpopupmenu.cpp:551 uml.cpp:423
+msgid "Use Case Diagram..."
+msgstr "Käyttötapauskaavio..."
+
+#: listpopupmenu.cpp:616 uml.cpp:424
+msgid "State Diagram..."
+msgstr "Tilakaavio..."
+
+#: listpopupmenu.cpp:617 uml.cpp:425
+msgid "Activity Diagram..."
+msgstr "Aktiviteettikaavio..."
+
+#: listpopupmenu.cpp:521 uml.cpp:426
+msgid "Component Diagram..."
+msgstr "Komponenttikaavio..."
+
+#: listpopupmenu.cpp:528 uml.cpp:427
+msgid "Deployment Diagram..."
+msgstr "Sijoittelukaavio..."
+
+#: listpopupmenu.cpp:541 uml.cpp:428
+#, fuzzy
+msgid "Entity Relationship Diagram..."
+msgstr "Käsitekaavio..."
+
+#: uml.cpp:458
+msgid "&Tree View"
+msgstr "Puunäy&ttö"
+
+#: uml.cpp:467
+msgid "&Documentation"
+msgstr "&Dokumentointi"
+
+#: uml.cpp:479 uml.cpp:664 uml.cpp:692
+msgid "Opening file..."
+msgstr "Avaa tiedostoa..."
+
+#: uml.cpp:650
+msgid "Creating new document..."
+msgstr "Luo uutta dokumenttia..."
+
+#: uml.cpp:673
+msgid ""
+"*.xmi *.xmi.tgz *.xmi.tar.bz2 *.mdl|All Supported Files (*.xmi, *.xmi.tgz, "
+"*.xmi.tar.bz2, *.mdl)\n"
+"*.xmi|Uncompressed XMI Files (*.xmi)\n"
+"*.xmi.tgz|Gzip Compressed XMI Files (*.xmi.tgz)\n"
+"*.xmi.tar.bz2|Bzip2 Compressed XMI Files (*.xmi.tar.bz2)\n"
+"*.mdl|Rose model files"
+msgstr ""
+"*.xmi *.xmi.tgz *.xmi.tar.bz2 *.mdl|Kaikki tuetut tiedostot (*.xmi, *.xmi.tgz, "
+"*.xmi.tar.bz2, *.mdl)\n"
+"*.xmi|Pakkaamattomat XMI-tiedostot (*.xmi)\n"
+"*.xmi.tgz|Gzip-pakatut XMI-tiedostot (*.xmi.tgz)\n"
+"*.xmi.tar.bz2|Bzip2-pakatut XMI-tiedostot (*.xmi.tar.bz2)\n"
+"*.mdl|Rose-mallin tiedostot"
+
+#: uml.cpp:677
+msgid "Open File"
+msgstr "Avaa tiedoston"
+
+#: uml.cpp:716
+msgid "Saving file..."
+msgstr "Tallettaa tiedostoa..."
+
+#: uml.cpp:727
+msgid "Saving file with a new filename..."
+msgstr "Tallettaa tiedoston uudella nimellä..."
+
+#: uml.cpp:732
+msgid ""
+"*.xmi|XMI File\n"
+"*.xmi.tgz|Gzip Compressed XMI File\n"
+"*.xmi.tar.bz2|Bzip2 Compressed XMI File\n"
+"*|All Files"
+msgstr ""
+"*.xmi|XMI tiedosto\n"
+"*.xmi.tgz|Gzip-pakattu XMI-tiedosto\n"
+"*.xmi.tar.bz2|Bzip2-pakattu XMI-tiedosto\n"
+"*|Kaikki tiedostot"
+
+#: uml.cpp:740
+msgid ""
+"The file %1 exists.\n"
+"Do you wish to overwrite it?"
+msgstr ""
+"Tiedosto %1 on jo olemassa.\n"
+"Haluatko korvata sen?"
+
+#: uml.cpp:740
+msgid "Overwrite"
+msgstr "Korvaa"
+
+#: uml.cpp:764
+msgid "Closing file..."
+msgstr "Sulkee tiedostoa..."
+
+#: uml.cpp:772
+msgid "Printing..."
+msgstr "Tulostaa..."
+
+#: uml.cpp:779
+#, c-format
+msgid "Print %1"
+msgstr "Tulosta %1"
+
+#: uml.cpp:787
+msgid "Exiting..."
+msgstr "Poistuu..."
+
+#: uml.cpp:823
+msgid "Cutting selection..."
+msgstr "Leikkaa valittua aluetta..."
+
+#: uml.cpp:836
+msgid "Copying selection to clipboard..."
+msgstr "Kopioi valittua aluetta leikepöydälle..."
+
+#: uml.cpp:844
+msgid "Inserting clipboard contents..."
+msgstr "Liittää työpöydän sisältöä..."
+
+#: uml.cpp:849
+msgid ""
+"Umbrello could not paste the clipboard contents. The objects in the clipboard "
+"may be of the wrong type to be pasted here."
+msgstr ""
+"Umbrello ei pystynyt liittämään leikepöydän sisältöä. Leikepöydän oliot ovat "
+"epäsopivan tyyppisiä tähän."
+
+#: clipboard/umlclipboard.cpp:691 uml.cpp:851
+msgid "Paste Error"
+msgstr "Liittämisvirhe"
+
+#: uml.cpp:863
+msgid "Toggling toolbar..."
+msgstr "Aseta työkaluriviä..."
+
+#: uml.cpp:878
+msgid "Toggle the statusbar..."
+msgstr "Aseta tilariviä..."
+
+#: uml.cpp:1186
+msgid "Cannot view code until you generate some first."
+msgstr ""
+"Koodia ei voi näyttää ennennkuin olet luonut (generoinut) jotain koodia."
+
+#: uml.cpp:1186 uml.cpp:1189
+msgid "Cannot View Code"
+msgstr "Ei pysty näyttämään koodia"
+
+#: uml.cpp:1189
+msgid "Cannot view code from simple code writer."
+msgstr "Ei voi näyttää koodia yksinkertaisessa editorissa,"
+
+#: uml.cpp:1387
+msgid "*.idl|IDL Files (*.idl)"
+msgstr "*.idl|IDL-tiedostot (*.idl)"
+
+#: uml.cpp:1389
+msgid "*.py|Python Files (*.py)"
+msgstr "*.py|Python-tiedostot (*.py)"
+
+#: uml.cpp:1391
+msgid "*.java|Java Files (*.java)"
+msgstr "*.java|Java-tiedostot (*.java)"
+
+#: uml.cpp:1393
+msgid "*.pas|Pascal Files (*.pas)"
+msgstr "*.pas|Pascal-tiedostot (*.pas)"
+
+#: uml.cpp:1395
+msgid "*.ads *.ada|Ada Files (*.ads *.ada)"
+msgstr "*.ads *.ada|Ada-tiedostot (*.ads *.ada)"
+
+#: uml.cpp:1397
+msgid "*.h *.hh *.hpp *.hxx *.H|Header Files (*.h *.hh *.hpp *.hxx *.H)"
+msgstr "*.h *.hh *.hpp *.hxx *.H|Header-tiedostot (*.h *.hh *.hpp *.hxx *.H)"
+
+#: uml.cpp:1399
+msgid "All Files"
+msgstr "Kaikki tiedostot"
+
+#: uml.cpp:1401
+msgid "Select Code to Import"
+msgstr "Valitse tuotava koodi"
+
+#. i18n: file umbrelloui.rc line 5
+#: rc.cpp:6
+#, no-c-format
+msgid "&Export"
+msgstr "Vi&e"
+
+#. i18n: file umbrelloui.rc line 13
+#: rc.cpp:12
+#, no-c-format
+msgid "&Diagram"
+msgstr "&Diagrammi"
+
+#. i18n: file umbrelloui.rc line 14
+#: rc.cpp:15
+#, no-c-format
+msgid "&New"
+msgstr "&Uusi"
+
+#. i18n: file umbrelloui.rc line 31
+#: rc.cpp:18
+#, no-c-format
+msgid "Sh&ow"
+msgstr "Näy&tä"
+
+#. i18n: file umbrelloui.rc line 43
+#: rc.cpp:24
+#, no-c-format
+msgid "&Code"
+msgstr "&Koodi"
+
+#. i18n: file umbrelloui.rc line 47
+#: rc.cpp:27
+#, no-c-format
+msgid "Active &Language"
+msgstr "Aktiivinen kie&li"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 53
+#: rc.cpp:33 rc.cpp:156
+#, no-c-format
+msgid "Slash-Slash (//)"
+msgstr "Slash-slash (//)"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 58
+#: rc.cpp:36 rc.cpp:159
+#, no-c-format
+msgid "Slash-Star (/** */)"
+msgstr "Slash-tähti (/** */)"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 70
+#: rc.cpp:39 rc.cpp:153 rc.cpp:210
+#, no-c-format
+msgid "Style:"
+msgstr "Tyyli:"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 98
+#: rc.cpp:42
+#, no-c-format
+msgid "C++ Code Generation
"
+msgstr "C++ koodingenerointi
"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 136
+#: rc.cpp:48
+#, no-c-format
+msgid "Method Body Generation"
+msgstr "Metodin koodipohjan luonti"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 164
+#: rc.cpp:51
+#, no-c-format
+msgid "Use following for classes in generated code:"
+msgstr "Käytä generoidussa koodissa seuraavaa luokille:"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 201
+#: rc.cpp:54
+#, no-c-format
+msgid "QPtrList"
+msgstr "QPtrList"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 202
+#: rc.cpp:57 rc.cpp:81
+#, no-c-format
+msgid "vector"
+msgstr "vektori"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 211
+#: rc.cpp:60
+#, no-c-format
+msgid "Variable"
+msgstr "Muuttuja"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 233
+#: rc.cpp:63 rc.cpp:96
+#, no-c-format
+msgid "..."
+msgstr "..."
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 273
+#: rc.cpp:66
+#, no-c-format
+msgid "QString"
+msgstr "QString"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 274
+#: rc.cpp:69 rc.cpp:90
+#, no-c-format
+msgid "string"
+msgstr "string"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 325
+#: rc.cpp:72
+#, no-c-format
+msgid "String
"
+msgstr "String
"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 341
+#: rc.cpp:75
+#, no-c-format
+msgid "List
"
+msgstr "Lista
"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 364
+#: rc.cpp:78
+#, no-c-format
+msgid "qptrlist.h"
+msgstr "qptrlist.h"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 374
+#: rc.cpp:84
+#, no-c-format
+msgid "global?"
+msgstr "globaali?"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 397
+#: rc.cpp:87
+#, no-c-format
+msgid "qstring.h"
+msgstr "qstring.h"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 418
+#: rc.cpp:93
+#, no-c-format
+msgid "Class name"
+msgstr "Luokan nimi"
+
+#. i18n: file codegenerators/cppcodegenerationformbase.ui line 448
+#: rc.cpp:99
+#, no-c-format
+msgid "Include file
"
+msgstr "Sisällytettävä tiedosto
"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 40
+#: rc.cpp:102
+#, no-c-format
+msgid "Project Generation"
+msgstr "Projektinluonti"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 51
+#: rc.cpp:105
+#, no-c-format
+msgid "Create ANT build document"
+msgstr "Luo ANT build dokumentti (build.xml)"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 69
+#: rc.cpp:108 rc.cpp:165
+#, no-c-format
+msgid "Auto-Generate Methods"
+msgstr "Luo metodien koodipohjat automaattisesti"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 88
+#: rc.cpp:111 rc.cpp:168
+#, no-c-format
+msgid "Empty constructor methods"
+msgstr "Muodostimien koodipohjat"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 99
+#: rc.cpp:114 rc.cpp:171
+#, no-c-format
+msgid "Association accessor methods"
+msgstr "Accessor-metodien assosiointi"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 110
+#: rc.cpp:117 rc.cpp:174
+#, no-c-format
+msgid "Attribute accessor methods"
+msgstr "Attribuuttien aksessorimetodit"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 144
+#: rc.cpp:129 rc.cpp:186
+#, no-c-format
+msgid "From Parent Object"
+msgstr ""
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 159
+#: rc.cpp:132 rc.cpp:189
+#, no-c-format
+msgid "Default attribute accessor scope:"
+msgstr "Attribuutin accessorin oletusnäkyvyys:"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 177
+#: rc.cpp:135 rc.cpp:192
+#, no-c-format
+msgid "Default association field scope:"
+msgstr "Assosiaation oletusnäkyvyys:"
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 198
+#: rc.cpp:147 rc.cpp:204
+#, no-c-format
+msgid "From Parent Role"
+msgstr ""
+
+#. i18n: file codegenerators/javacodegenerationformbase.ui line 269
+#: rc.cpp:162
+#, no-c-format
+msgid "Java Code Generation
"
+msgstr "Java-koodin luonti
"
+
+#. i18n: file codegenerators/rubycodegenerationformbase.ui line 213
+#: rc.cpp:213
+#, no-c-format
+msgid "Hash (#)"
+msgstr ""
+
+#. i18n: file codegenerators/rubycodegenerationformbase.ui line 218
+#: rc.cpp:216
+#, no-c-format
+msgid "Begin-End (=begin =end)"
+msgstr ""
+
+#. i18n: file codegenerators/rubycodegenerationformbase.ui line 240
+#: rc.cpp:219
+#, no-c-format
+msgid "Ruby Code Generation
"
+msgstr "Ruby-koodin luonti
"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 69
+#: rc.cpp:228
+#, no-c-format
+msgid "Language"
+msgstr "Kieli"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 93
+#: rc.cpp:231
+#, no-c-format
+msgid "Folders"
+msgstr "Kansiot"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 110
+#: rc.cpp:234
+#, no-c-format
+msgid "Write all generated files to folder:"
+msgstr "Kirjoita luodut tiedostot kansioon:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 118
+#: rc.cpp:237
+#, no-c-format
+msgid "Bro&wse..."
+msgstr "&Selaa..."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 126
+#: rc.cpp:240
+#, no-c-format
+msgid "B&rowse..."
+msgstr "S&elaa..."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 134
+#: rc.cpp:243
+#, no-c-format
+msgid "&Include heading files from folder:"
+msgstr "S&isällytä header-tiedostoja kansiosta"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 145
+#: rc.cpp:246
+#, no-c-format
+msgid "Files generated by Code Generator will be written to this folder"
+msgstr "Koodingeneroinnissa tuotetut tiedostot tulevat tähän kansioon."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 153
+#: rc.cpp:249
+#, no-c-format
+msgid ""
+"Files in this folder will be used as heading files in the generated code"
+msgstr "Tämän kansion tiedostot ovat header-tiedostoja koodin generoinnissa."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 197
+#: rc.cpp:252
+#, no-c-format
+msgid "Overwrite Policy"
+msgstr "Tiedoston ylikirjoitussäännöt"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 215
+#: rc.cpp:255
+#, no-c-format
+msgid ""
+"If a file with the same name as the name code \n"
+"generator wants to use as output file already exists:"
+msgstr ""
+"Jos koodingenerointi yrittää luoda samannimistä\n"
+"tiedostoa, joka on jo olemassa:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 223
+#: rc.cpp:259
+#, no-c-format
+msgid "O&verwrite"
+msgstr "K&orvaa"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 226
+#: rc.cpp:262
+#, no-c-format
+msgid "Overwrite existing files if they exist in the destination folder"
+msgstr "Ylikirjoita samannimiset nykyiset tiedostot kohdehakemistossa"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 234
+#: rc.cpp:265
+#, no-c-format
+msgid "As&k"
+msgstr "&Kysy"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 240
+#: rc.cpp:268
+#, no-c-format
+msgid "If a file with the same name already exists, ask what to do"
+msgstr "Jos samanniminen tiedosto on jo olemassa, kysy mitä tehdä"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 248
+#: rc.cpp:271
+#, no-c-format
+msgid "&Use a different name"
+msgstr "Käytä m&uuta nimeä"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 251
+#: rc.cpp:274
+#, no-c-format
+msgid ""
+"If a file already exists in the destination folder, select a different name to "
+"use by adding a suffix to the file name"
+msgstr ""
+"Jos tiedosto on jo olemassa kohdekansiossa, valitse toinen nimi lisäämällä "
+"tiedostopääte nimeen."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 265
+#: rc.cpp:277
+#, no-c-format
+msgid "Formatting"
+msgstr "Muotoilu"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 284
+#: rc.cpp:280
+#, no-c-format
+msgid "Lines"
+msgstr "Rivit"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 346
+#: rc.cpp:283
+#, no-c-format
+msgid "Line ending style:"
+msgstr "Rivinvaihtomerkin tyyli:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 354
+#: rc.cpp:286
+#, no-c-format
+msgid "Indentation type:"
+msgstr "Sisennyksen tyyppi:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 362
+#: rc.cpp:289
+#, no-c-format
+msgid "Indentation amount:"
+msgstr "Sisennyksen määrä:"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 368
+#: rc.cpp:292
+#, no-c-format
+msgid ""
+"*NIX (\"\\n\")"
+msgstr ""
+"*NIX (\"\\n\")"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 373
+#: rc.cpp:295
+#, no-c-format
+msgid ""
+"Windows (\"\\r\\n\")"
+msgstr ""
+"Windows (\"\\r\\n\")"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 378
+#: rc.cpp:298
+#, no-c-format
+msgid "Mac (\"\\r\")"
+msgstr "Mac (\"\\r\")"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 388
+#: rc.cpp:301
+#, no-c-format
+msgid "No Indentation"
+msgstr "Ei sisennystä"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 393
+#: rc.cpp:304
+#, no-c-format
+msgid "Tab"
+msgstr "Tabulointi"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 398
+#: rc.cpp:307
+#, no-c-format
+msgid "Space"
+msgstr "Tila"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 417
+#: rc.cpp:310
+#, no-c-format
+msgid "Comment Verbosity"
+msgstr "Kommentin näkyvyys"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 433
+#: rc.cpp:313
+#, no-c-format
+msgid ""
+"Write comments &for sections even if section \n"
+"is empty"
+msgstr "Kirjoita kommentit jopa tyhjiin alueisiin"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 436
+#: rc.cpp:317
+#, no-c-format
+msgid ""
+"Writes comments to indicate the different sections (public, private etc) in a "
+"class, even if the sections are empty"
+msgstr ""
+"Kirjoittaa kommentit jopa tyhjiin luokan eri osiin (public, private jne)."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 452
+#: rc.cpp:320
+#, no-c-format
+msgid "&Write documentation comments even if empty"
+msgstr "&Kirjoita dokumentoinnin kommentit jopa tyhjänä"
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 455
+#: rc.cpp:323
+#, no-c-format
+msgid "Write comments &for class and method documentation even if empty"
+msgstr "Kirjoittaa kommentit jopa &tyhjiin luokkiin ja metodeihin."
+
+#. i18n: file dialogs/codegenerationoptionsbase.ui line 468
+#: rc.cpp:326
+#, no-c-format
+msgid "Language Options"
+msgstr "Kieliasetukset"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 16
+#: rc.cpp:329
+#, no-c-format
+msgid "Code Generation Wizard"
+msgstr "Koodinluontivelho"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 23
+#: rc.cpp:332
+#, no-c-format
+msgid "Select Classes"
+msgstr "Valitse luokat"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 41
+#: rc.cpp:335
+#, no-c-format
+msgid ""
+"Place all the classes you want to generate code\n"
+"for in the right hand side list"
+msgstr ""
+"Sijoita kaikki luokat oikeanpuoleiseen listaan,\n"
+"joista haluat generoida koodin"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 78
+#: rc.cpp:339
+#, no-c-format
+msgid "Add class for code generation"
+msgstr "Lisää luokka koodingenerointiin"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 101
+#: rc.cpp:342
+#, no-c-format
+msgid "Classes Selected"
+msgstr "Valitut luokat"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 136
+#: rc.cpp:345
+#, no-c-format
+msgid "Remove class from Code Generation"
+msgstr "Poista luokka koodinluonnista"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 159
+#: rc.cpp:348
+#, no-c-format
+msgid "Classes Available"
+msgstr "Käytettävissä olevat luokat"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 209
+#: rc.cpp:351
+#, no-c-format
+msgid "Code Generation Status"
+msgstr "Koodinluoonnin tila"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 226
+#: rc.cpp:354
+#, no-c-format
+msgid "Press the Generation button to start the code generation"
+msgstr "Paina Luo-nappia aloittaaksesi koodinluonnin"
+
+#. i18n: file dialogs/codegenerationwizardbase.ui line 234
+#: rc.cpp:357 rc.cpp:363
+#, no-c-format
+msgid "Generation Status"
+msgstr "Luonnin tila"
+
+#. i18n: file dialogs/codeviewerdialogbase.ui line 43
+#: rc.cpp:369
+#, no-c-format
+msgid "Show hidden blocks"
+msgstr "Näytä piilotetut lohkot"
+
+#. i18n: file dialogs/codeviewerdialogbase.ui line 59
+#: rc.cpp:372
+#, no-c-format
+msgid "component name here
"
+msgstr "komponentin nimi tähän
"
+
+#. i18n: file dialogs/codeviewerdialogbase.ui line 86
+#: rc.cpp:378
+#, no-c-format
+msgid "Show block type"
+msgstr "Näytä lohkon tyyppi"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 45
+#: rc.cpp:381
+#, no-c-format
+msgid "Colors"
+msgstr "Värit"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 72
+#: rc.cpp:384
+#, no-c-format
+msgid "Font:"
+msgstr "Fontti:"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 103
+#: rc.cpp:387
+#, no-c-format
+msgid "Paper:"
+msgstr "Tausta:"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 134
+#: rc.cpp:390
+#, no-c-format
+msgid "Selected:"
+msgstr "Valittu:"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 260
+#: rc.cpp:393
+#, no-c-format
+msgid "UML object block:
"
+msgstr "UML objektin lohko:
"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 276
+#: rc.cpp:396
+#, no-c-format
+msgid "Hidden block:
"
+msgstr "Piilotettu lohko:
"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 294
+#: rc.cpp:399
+#, no-c-format
+msgid "Uneditable text:
"
+msgstr "Editoimaton teksti:
"
+
+#. i18n: file dialogs/codevieweroptionsbase.ui line 333
+#: rc.cpp:402
+#, no-c-format
+msgid "Editable text:
"
+msgstr "Editoitava teksti:
"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 30
+#: rc.cpp:405
+#, no-c-format
+msgid "Diagram Properties"
+msgstr "Kaavion ominaisuudet"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 92
+#: rc.cpp:411
+#, no-c-format
+msgid "Zoom:"
+msgstr "Zoom:"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 119
+#: rc.cpp:414
+#, no-c-format
+msgid "%"
+msgstr "%"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 186
+#: rc.cpp:420
+#, no-c-format
+msgid "Show &grid"
+msgstr "Näytä &hila"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 194
+#: rc.cpp:423
+#, no-c-format
+msgid "Snap &to grid"
+msgstr "Sovi&ta hilaan"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 202
+#: rc.cpp:426
+#, no-c-format
+msgid "Snap component size"
+msgstr "Sovita komponentin koko"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 206
+#: rc.cpp:429
+#, no-c-format
+msgid ""
+"Snap the size of the components to be a multiple of the grid spacing.\n"
+"If 'Snap to Grid' is enabled a component will always be aligned with the grid "
+"on all 4 sides."
+msgstr ""
+"Napsauta komponentin kokoa kasvattaaksesi kokoa hilassa.\n"
+"Jos hilaan sovittaminen on asetettu, kaikki 4 sivua sovitetaan hilaan."
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 257
+#: rc.cpp:433
+#, no-c-format
+msgid "Grid spacing: "
+msgstr "Hilan välit: "
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 265
+#: rc.cpp:436
+#, no-c-format
+msgid "X"
+msgstr "X"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 284
+#: rc.cpp:439
+#, no-c-format
+msgid "Y"
+msgstr "Y"
+
+#. i18n: file dialogs/diagrampropertiespage.ui line 346
+#: rc.cpp:442
+#, no-c-format
+msgid "Line width: "
+msgstr "Rivinpituus: "
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 16
+#: rc.cpp:448
+#, no-c-format
+msgid "Export all views"
+msgstr "Vie kaikki näkymät"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 49
+#: rc.cpp:451
+#, no-c-format
+msgid "&Directory to save the diagrams in:"
+msgstr "&Kansio, jonne kaaviot talletetaan:"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 55
+#: rc.cpp:454 rc.cpp:457
+#, no-c-format
+msgid "The base directory used to save the images"
+msgstr "Peruskansio, jonne kuvat talletetaan"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 84
+#: rc.cpp:460
+#, no-c-format
+msgid "&Image type:"
+msgstr "Kuvan tyypp&i:"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 100
+#: rc.cpp:466
+#, no-c-format
+msgid "Use &folders"
+msgstr "Käytä &kansioita"
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 104
+#: rc.cpp:469
+#, no-c-format
+msgid ""
+"Create in the target directory the same tree structure used\n"
+"in the document to store the views"
+msgstr ""
+
+#. i18n: file dialogs/exportallviewsdialogbase.ui line 108
+#: rc.cpp:473
+#, no-c-format
+msgid ""
+"The views are stored in folders in the document. The same tree structure used "
+"in the document to store the views can be created in the selected base "
+"directory with this option.\n"
+"Only the folders made by the user are created in the base directory (Logical "
+"view, use case view and so on aren't created)."
+msgstr ""
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 106
+#: rc.cpp:495
+#, no-c-format
+msgid "Role Changeability"
+msgstr "Roolin muutettavuus"
+
+#. i18n: file dialogs/umlrolepropertiesbase.ui line 156
+#: rc.cpp:507
+#, no-c-format
+msgid "Role Visibility"
+msgstr "Roolin näkyvyys"
+
+#: folder.cpp:289
+msgid "The folderfile %1 does not exist."
+msgstr "Kansiota %1 ei ollut."
+
+#: folder.cpp:293
+msgid "The folderfile %1 cannot be opened."
+msgstr "Kansiota %1 ei voida avata."
+
+#: classifier.cpp:201
+msgid ""
+"An operation with the same name and signature already exists. You can not add "
+"it again."
+msgstr ""
+"Samalla nimellä ja allekirjoituksella on jo olemassa toiminto. Et voi lisätä "
+"sitä uudelleen."
+
+#: activitywidget.cpp:163 toolbarstateother.cpp:143 umlview.cpp:2545
+msgid "Enter Activity Name"
+msgstr "Anna aktiviteetin nimi"
+
+#: statewidget.cpp:165 toolbarstateother.cpp:147 umlview.cpp:2509
+msgid "Enter State Name"
+msgstr "Anna tilan nimi"
+
+#: statewidget.cpp:165 toolbarstateother.cpp:148 umlview.cpp:2510
+msgid "Enter the name of the new state:"
+msgstr "Anna uuden tilan nimi:"
+
+#: toolbarstateother.cpp:148 umlview.cpp:2511
+msgid "new state"
+msgstr "uusi tila"
+
+#: listpopupmenu.cpp:695 stereotype.cpp:76
+msgid "Stereotype"
+msgstr "Stereotypia"
+
+#: associationwidget.cpp:2328
+msgid "Multiplicity"
+msgstr "Kerroin"
+
+#: associationwidget.cpp:2346
+msgid "Association Name"
+msgstr "Assosiaation nimi"
+
+#: associationwidget.cpp:2366
+msgid "Role Name"
+msgstr "Roolin nimi"
+
+#: umlview.cpp:297 umlview.cpp:357
+msgid "Diagram: %2 Page %1"
+msgstr "Kaavio: %2 Sivu %1"
+
+#: umlview.cpp:2578
+msgid "Enter Diagram Name"
+msgstr "Anna kaavion nimi"
+
+#: umlview.cpp:2579
+msgid "Enter the new name of the diagram:"
+msgstr "Anna kaavion uusi nimi:"
+
+#: umlview.cpp:2736
+msgid ""
+"You are about to delete the entire diagram.\n"
+"Are you sure?"
+msgstr ""
+"Olet poistamassa kaaviota.\n"
+"Oletko varma?"
+
+#: umlview.cpp:2738
+msgid "Delete Diagram?"
+msgstr "Poista kaavio?"
+
+#: objectwidget.cpp:90
+msgid "Rename Object"
+msgstr "Nimeä objekti uudelleen"
+
+#: objectwidget.cpp:91
+msgid "Enter object name:"
+msgstr "Anna objektin nimi:"
+
+#: clipboard/umlclipboard.cpp:687
+msgid ""
+"At least one of the items in the clipboard could not be pasted because an item "
+"of the same name already exists. Any other items have been pasted."
+msgstr ""
+"Ainakin yksi kohde on jäänyt tuomatta leikepöydältä, koska samanniminen kohde "
+"on jo olemassa. Kaikki muut on lisätty."
+
+#: refactoring/refactoringassistant.cpp:289
+msgid "Add Base Class"
+msgstr "Lisää yliluokka"
+
+#: refactoring/refactoringassistant.cpp:290
+msgid "Add Derived Class"
+msgstr "Lisää aliluokka"
+
+#: refactoring/refactoringassistant.cpp:292
+#: refactoring/refactoringassistant.cpp:299
+#: refactoring/refactoringassistant.cpp:313
+msgid "Add Operation"
+msgstr "Lisää metodi"
+
+#: refactoring/refactoringassistant.cpp:293
+#: refactoring/refactoringassistant.cpp:317
+msgid "Add Attribute"
+msgstr "Lisää attribuutti"
+
+#: refactoring/refactoringassistant.cpp:297
+#, fuzzy
+msgid "Add Base Interface"
+msgstr "Lisää peruskäyttöliittymä"
+
+#: refactoring/refactoringassistant.cpp:298
+msgid "Add Derived Interface"
+msgstr "Lisää perivä käyttöliittymä"
+
+#: refactoring/refactoringassistant.cpp:355
+#: refactoring/refactoringassistant.cpp:511
+msgid "Base Classifiers"
+msgstr "Yliluokat"
+
+#: refactoring/refactoringassistant.cpp:397
+#: refactoring/refactoringassistant.cpp:530
+msgid "Derived Classifiers"
+msgstr "Aliluokat"
+
+#: tips.cpp:3
+msgid ""
+"Welcome to Umbrello.
\n"
+"UML diagrams let you design and document object oriented software. The Umbrello Handbook is a good introduction to "
+"using UML.
\n"
+msgstr ""
+"Tervetuloa Umbrelloon.
\n"
+"UML mallit auttavat suunnittelemaan ja dokumentoimaan objektiorientoituneita "
+"ohjelmia. Umbrellon käsikirja "
+"on hyvä johdatus UML:n käyttöön.
\n"
+
+#: tips.cpp:9
+msgid ""
+"Welcome to Umbrello 1.5. New in this version are association classes, Ruby "
+"code generation, externalizable folders, ability to change interfaces into "
+"classes, and more.
\n"
+msgstr ""
+"Tervetuloa Umbrello 1.5 -oohjelmaan. Tässä versiossa on uutta "
+"assosiaatioluokat, Ruby koodin kehitys, kansioiden ulkoistus, kyky vaihtaa "
+"rajapinnat luokiksi, ja muuta.
\n"
+
+#: tips.cpp:14
+msgid ""
+"Tabbed Diagrams and Externalized Folders are mutually exclusive. If you need "
+"External Folders then deselect "Use tabbed diagrams" in the General "
+"Settings.
\n"
+msgstr ""
+
+#: tips.cpp:19
+msgid ""
+"Most diagram items can not be resized, they will resize themselves to fit to "
+"their contents.\n"
+"Boxes, notes and sequence diagram messages can be resized, just click and drag "
+"on the red square.
\n"
+msgstr ""
+"Suurinta osaa kaavioiden kappaleiden kokoa ei voi muuttaa. Ne skaalautuvat "
+"automaattisesti niille varattuun tilaan.\n"
+"Laatikkojen, muistioiden ja sekvenssikaavioiden viestien kokoa voi muuttaa "
+"klikkaamalla niitä ja vetämällä hiirellä punaisesta neliöstä.
\n"
+
+#: tips.cpp:25
+msgid ""
+"If you want to add an already existing class to a diagram just drag its "
+"entry from the tree view.
\n"
+msgstr ""
+"Jos haluat lisätä kaavioon jo olemassaolevan luokan, siirrä (drag+drop) se "
+"hiirellä puunäytöstä.
\n"
+
+#: tips.cpp:30
+msgid ""
+"Umbrello's refactoring agent lets you move operations between a class and "
+"its derived and base \n"
+"classes.\n"
+"Right click a class to open the refactoring agent.
\n"
+msgstr ""
+"Umbrellon uusi refactoring agentilla voit siirtää toimintoja johdettujen ja "
+"kantaluokkien välillä\n"
+"Refactoring agent avautuu luoksta hiiren oikeanpuoleisella napilla.
\n"
+
+#: tips.cpp:37
+msgid ""
+"Sequence diagram objects can have a destructor box and be drawn as actors. "
+"Double click one for\n"
+"the Properties dialogue.
\n"
+msgstr ""
+"Sekvenssikaavioiden olioilla voi olla hajoitinlaatikko ja ne voidaan piirtää "
+"aktoreina. Kaksoisklikkaa yhtä ominaisuusdialogin esillesaamiseksi.
\n"
+
+#: tips.cpp:43
+msgid ""
+"Sequence diagram messages can act as constructors. Click on the object box "
+"(rather than the vertical line) to make it a constructor.
\n"
+msgstr ""
+"Sekvenssikaavioiden viestit voivat toimia muodostimina. Klikkaa "
+"kohdelaatikkoa (mieluummin kuin viivaa) tehdäksesi sille muodostimen.
\n"
+
+#: tips.cpp:48
+msgid ""
+"Sequence diagrams support messages to self. Click on the same vertical line "
+"again to create an automessage.
\n"
+msgstr ""
+
+#: tips.cpp:53
+msgid ""
+"If on loading a foreign file nothing is displayed in the list view, try "
+"saving the model under a different name,\n"
+"closing, and reloading the saved file. Usually the list view is then properly "
+"populated.\n"
+"
\n"
+msgstr ""
+
+#: tips.cpp:60
+msgid ""
+"Cut and Copy will also export the image to a PNG clipboard which can be "
+"pasted into KWord\n"
+"and other applications.
\n"
+msgstr ""
+"Leikkaa ja kopioi vie kuvan PNG-leikepöydälle. Sen voi liittää\n"
+"KWordiin ja toisiin sovelluksiin.
\n"
+
+#: tips.cpp:66
+#, fuzzy
+msgid ""
+"Associations do not have to be in straight lines, double clicking on one "
+"will create a movable point.
\n"
+msgstr ""
+"Assosiaatioiden ei tarvitse olla suoria. Assosiaation kaksoisklikkaus luo "
+"siirreltävän pisteen.
\n"
+
+#: tips.cpp:71
+msgid ""
+"You can turn on autosaving in the Configure Umbrello dialog.
\n"
+msgstr ""
+"Voit asettaa automaattitallennuksen Muokkaa Umbrellon asetuksia "
+"valikossa.
\n"
+
+#: tips.cpp:76
+msgid ""
+"Is a feature missing that you need in Umbrello? Please let us know. \n"
+"Either add it to the bugs database with Report Bug from the Help menu\n"
+"or send it to the uml-devel mailing list.
\n"
+"\n"
+msgstr ""
+"Puuttuuko Umbrellosta jokin ominaisuus? Kerro siitä meille. \n"
+"Voit vaihtoehtoisesti lisätä bugin bugitietokantaan Ilmoita virheestä "
+"-toiminnolla Help-valikossa.\n"
+"Voit lähettää bugiraportin myös uml-devel postituslistalle.
\n"
+"\n"
+
+#: tips.cpp:86
+msgid ""
+"You can delete all selected objects by pressing Del or Backspace.
\n"
+msgstr ""
+"Voit poistaa kaikki valitut objektit painamalla Del tai Backspace "
+"-näppäintä.
\n"
+
+#: tips.cpp:91
+msgid ""
+"If you've found a bug in Umbrello, please let us know. \n"
+"You can submit bugs with the Report Bug tool in the Help menu.
\n"
+msgstr ""
+"Jos olet löytänyt bugin Umbrellosta, kerro siitä meille.\n"
+"Voit lähettää ilmoituksen Ilmoita virheestä -työkalulla Help-valikossa.
\n"
+
+#: tips.cpp:97
+msgid ""
+"Pressing the Escape key sets the current tool to the select tool.\n"
+"Backspace jumps to the previously used tool.
\n"
+msgstr ""
+"Esc-näppäimen painallus asettaa nykyisen työkalun käyttöön.\n"
+"Backspace ottaa käyttöön aiemmin käytetyn työkalun.
\n"
+
+#: tips.cpp:103
+msgid ""
+"You can select all objects by pressing Ctrl-A.
\n"
+msgstr ""
+"Voit valita objektin painamalla Ctrl-A.
\n"
+
+#: tips.cpp:108
+msgid ""
+"You can create and setup a new class using the New Class Wizard in the Code "
+"menu.
\n"
+msgstr ""
+"Voit luoda ja asettaa uuden luokan käyttämällä Code-menun uuden luokan "
+"luontivelhoa.
\n"
+
+#: statewidget.cpp:176
+msgid "Enter Activity"
+msgstr "Syötä aktiviteetti"
+
+#: toolbarstateassociation.cpp:119 toolbarstateassociation.cpp:175
+msgid "Incorrect use of associations."
+msgstr "Assosiaation väärä käyttätapa."
+
+#: toolbarstateassociation.cpp:119 toolbarstateassociation.cpp:175
+msgid "Association Error"
+msgstr "Assosiointivirhe"
+
+#: operation.cpp:185
+msgid "new_parameter"
+msgstr "uusi_parametri"
+
+#: listpopupmenu.cpp:231 listpopupmenu.cpp:486
+msgid "Change Font..."
+msgstr "Vaihda fonttia..."
+
+#: listpopupmenu.cpp:233
+msgid "Delete Selected Items"
+msgstr "Poista valitut kohteet"
+
+#: listpopupmenu.cpp:240 listpopupmenu.cpp:718
+msgid "Draw as Circle"
+msgstr "Piirrä ympyränä"
+
+#: listpopupmenu.cpp:243 listpopupmenu.cpp:720
+msgid "Change into Class"
+msgstr "Vaihda luokkaan"
+
+#: listpopupmenu.cpp:247 listpopupmenu.cpp:726
+msgid "Change into Interface"
+msgstr "Vaihda rajapintaan"
+
+#: listpopupmenu.cpp:281 listpopupmenu.cpp:1155
+msgid "Enum Literal..."
+msgstr "Luetellun tyypin literaali"
+
+#: listpopupmenu.cpp:292 listpopupmenu.cpp:1143
+msgid "Entity Attribute..."
+msgstr "Entiteetin attribuutti..."
+
+#: listpopupmenu.cpp:318
+msgid "Move Up"
+msgstr "Siirrä ylös"
+
+#: listpopupmenu.cpp:319
+msgid "Move Down"
+msgstr "Siirrä alas"
+
+#: listpopupmenu.cpp:325
+msgid "Rename Class..."
+msgstr "Nimeä luokka uudelleen"
+
+#: listpopupmenu.cpp:326
+msgid "Rename Object..."
+msgstr "Nimeä objekti uudelleen..."
+
+#: listpopupmenu.cpp:334 listpopupmenu.cpp:423 listpopupmenu.cpp:564
+msgid "New Operation..."
+msgstr "Uusi toiminto..."
+
+#: listpopupmenu.cpp:335 listpopupmenu.cpp:424 listpopupmenu.cpp:1302
+msgid "Select Operation..."
+msgstr "Valitse toiminto..."
+
+#: listpopupmenu.cpp:346 listpopupmenu.cpp:430
+msgid "Change Text..."
+msgstr "Muuta tekstiä..."
+
+#: listpopupmenu.cpp:360 listpopupmenu.cpp:579 listpopupmenu.cpp:1043
+msgid "Activity..."
+msgstr "Aktiviteetti..."
+
+#: listpopupmenu.cpp:366
+msgid "Change State Name..."
+msgstr "Muuta tilan nimeä..."
+
+#: listpopupmenu.cpp:376
+msgid "Flip Horizontal"
+msgstr "Käännä vaakatasossa"
+
+#: listpopupmenu.cpp:378
+msgid "Flip Vertical"
+msgstr "Käännä pystysuunnassa"
+
+#: listpopupmenu.cpp:388
+msgid "Change Activity Name..."
+msgstr "Muuta aktiviteetin nimeä..."
+
+#: listpopupmenu.cpp:397 listpopupmenu.cpp:400 listpopupmenu.cpp:1268
+#: listpopupmenu.cpp:1272
+#, fuzzy
+msgid "Change Multiplicity..."
+msgstr "Muuta lukumääräsuhdetta..."
+
+#: listpopupmenu.cpp:403 listpopupmenu.cpp:1276
+msgid "Change Name"
+msgstr "Vaihda nimi"
+
+#: listpopupmenu.cpp:406 listpopupmenu.cpp:1260 listpopupmenu.cpp:1282
+msgid "Change Role A Name..."
+msgstr "Vaihda roolin A nimeä..."
+
+#: listpopupmenu.cpp:409 listpopupmenu.cpp:1264 listpopupmenu.cpp:1283
+msgid "Change Role B Name..."
+msgstr "Vaihda roolin B nimeä..."
+
+#: listpopupmenu.cpp:461
+msgid "New"
+msgstr "Uusi"
+
+#: listpopupmenu.cpp:471 listpopupmenu.cpp:1306
+msgid "Rename..."
+msgstr "Uudelleennimeä..."
+
+#: listpopupmenu.cpp:489 listpopupmenu.cpp:734 listpopupmenu.cpp:745
+msgid "Line Color..."
+msgstr "Rivin väri..."
+
+#: listpopupmenu.cpp:492
+msgid "Expand All"
+msgstr "Levitä kaikki"
+
+#: listpopupmenu.cpp:495
+msgid "Collapse All"
+msgstr "Kokoa kaikki"
+
+#: listpopupmenu.cpp:498
+msgid "Duplicate"
+msgstr "Kahdenna"
+
+#: listpopupmenu.cpp:501
+msgid "Externalize Folder..."
+msgstr "Ulkoista kansio..."
+
+#: listpopupmenu.cpp:504
+msgid "Internalize Folder"
+msgstr "Sisäistä kansio"
+
+#: listpopupmenu.cpp:507
+msgid "Import Classes..."
+msgstr "Tuo luokkia..."
+
+#: listpopupmenu.cpp:512
+msgid "Subsystem"
+msgstr "Alijärjestelmä"
+
+#: listpopupmenu.cpp:535 listpopupmenu.cpp:608
+msgid "Folder"
+msgstr "Kansio"
+
+#: listpopupmenu.cpp:555
+msgid "Text Line..."
+msgstr "Tekstirivi..."
+
+#: listpopupmenu.cpp:558
+msgid "Reset Label Positions"
+msgstr "Palauta nimikkeiden paikat"
+
+#: listpopupmenu.cpp:561
+msgid "New Parameter..."
+msgstr "Uusi parametri..."
+
+#: listpopupmenu.cpp:567
+msgid "New Attribute..."
+msgstr "Uusi attribuutti..."
+
+#: listpopupmenu.cpp:570 listpopupmenu.cpp:1232
+msgid "New Template..."
+msgstr "Uusi malli..."
+
+#: listpopupmenu.cpp:573
+msgid "New Literal..."
+msgstr "Uusi literaali"
+
+#: listpopupmenu.cpp:576
+msgid "New Entity Attribute..."
+msgstr "Uusi attribuutti..."
+
+#: listpopupmenu.cpp:582
+msgid "Export as Picture..."
+msgstr "Vie kuvana..."
+
+#: listpopupmenu.cpp:676
+msgid "Public Only"
+msgstr "Vain julkinen"
+
+#: listpopupmenu.cpp:680
+msgid "Operation Signature"
+msgstr "Metodin allekirjoitus"
+
+#: listpopupmenu.cpp:686
+msgid "Attribute Signature"
+msgstr "Attribuutin allekirjoitus"
+
+#: listpopupmenu.cpp:707
+msgid "Attribute..."
+msgstr "Attribuutti..."
+
+#: listpopupmenu.cpp:708
+msgid "Operation..."
+msgstr "Toimenpide..."
+
+#: listpopupmenu.cpp:722
+msgid "Refactor"
+msgstr ""
+
+#: listpopupmenu.cpp:723
+msgid "View Code"
+msgstr "Näytä koodi"
+
+#: listpopupmenu.cpp:735 listpopupmenu.cpp:746
+msgid "Fill Color..."
+msgstr "Täyteväri..."
+
+#: listpopupmenu.cpp:736 listpopupmenu.cpp:747
+msgid "Use Fill Color"
+msgstr "Käytä täyteväriä"
+
+#: listpopupmenu.cpp:1007
+msgid "Actor..."
+msgstr "Aktori..."
+
+#: listpopupmenu.cpp:1008
+msgid "Use Case..."
+msgstr "Käyttötapaus..."
+
+#: listpopupmenu.cpp:1017
+msgid "Class..."
+msgstr "Luokka..."
+
+#: listpopupmenu.cpp:1018
+msgid "Interface..."
+msgstr "Rajapinta..."
+
+#: listpopupmenu.cpp:1019
+msgid "Datatype..."
+msgstr "Tietotyyppi..."
+
+#: listpopupmenu.cpp:1020
+msgid "Enum..."
+msgstr "Lueteltu tyyppi..."
+
+#: listpopupmenu.cpp:1021
+msgid "Package..."
+msgstr "Pakkaus..."
+
+#: listpopupmenu.cpp:1032
+msgid "State..."
+msgstr "Tila..."
+
+#: listpopupmenu.cpp:1053
+msgid "Subsystem..."
+msgstr "Alijärjestelmä..."
+
+#: listpopupmenu.cpp:1054
+msgid "Component..."
+msgstr "Komponentti..."
+
+#: listpopupmenu.cpp:1055
+msgid "Artifact..."
+msgstr "Teos..."
+
+#: listpopupmenu.cpp:1063
+msgid "Node..."
+msgstr "Paketti..."
+
+#: listpopupmenu.cpp:1071
+msgid "Entity..."
+msgstr "Entiteetti..."
+
+#: listpopupmenu.cpp:1080
+msgid "Object..."
+msgstr "Objekti..."
+
+#: listpopupmenu.cpp:1089
+msgid "Attribute"
+msgstr "Attribuutti"
+
+#: listpopupmenu.cpp:1090 listpopupmenu.cpp:1099
+msgid "Operation"
+msgstr "Metodi"
+
+#: listpopupmenu.cpp:1091 listpopupmenu.cpp:1100
+msgid "Template"
+msgstr "Malli"
+
+#: listpopupmenu.cpp:1256
+msgid "Delete Anchor"
+msgstr "Poista ankkuri"
+
+#: listpopupmenu.cpp:1281
+msgid "Change Association Name..."
+msgstr "Vaihda assosiaation nimeä..."
+
+#: listpopupmenu.cpp:1339
+msgid "Clear Diagram"
+msgstr "Tyhjennä kaavio"
+
+#: listpopupmenu.cpp:1342
+msgid "Snap to Grid"
+msgstr "Sovita hilaan"
+
+#: listpopupmenu.cpp:1344
+msgid "Show Grid"
+msgstr "Näytä hila"
--
cgit v1.2.1