--- kgraphviewer-kde4-2.0.orig/po/fr/CMakeLists.txt +++ kgraphviewer-kde4-2.0/po/fr/CMakeLists.txt @@ -0,0 +1,2 @@ +file(GLOB _po_files *.po) +GETTEXT_PROCESS_PO_FILES( fr ALL INSTALL_DESTINATION ${LOCALE_INSTALL_DIR} ${_po_files} ) --- kgraphviewer-kde4-2.0.orig/po/fr/kgraphviewer.po +++ kgraphviewer-kde4-2.0/po/fr/kgraphviewer.po @@ -0,0 +1,503 @@ +# translation of kgraphviewer.po to Français +# French translations for PACKAGE package +# Traductions françaises du paquet PACKAGE. +# Copyright (C) 2008 This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Automatically generated, 2008. +# Cedric Roussel , 2008. +# Sébastien Renard , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kgraphviewer\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2007-12-04 06:08+0100\n" +"PO-Revision-Date: 2008-02-07 23:11+0100\n" +"Last-Translator: Sébastien Renard \n" +"Language-Team: Français \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: KBabel 1.11.4\n" + +#: KGraphEditorElementTreeWidget.cpp:51 KGraphEditorNodesTreeWidget.cpp:56 +msgid "Add a new attribute" +msgstr "Ajouter un nouvel attribut" + +#: KGraphEditorElementTreeWidget.cpp:58 KGraphEditorNodesTreeWidget.cpp:63 +msgid "Remove this attribute" +msgstr "Enlever cet attribut" + +#: KGraphEditorNodesTreeWidget.cpp:69 +msgid "Remove this node" +msgstr "Enlever ce nœud" + +#: kgrapheditor.cpp:153 kgraphviewer.cpp:117 +msgid "Do you want to reload files from previous session ?" +msgstr "Voulez-vous recharger les fichiers de la session précédente ?" + +#: kgrapheditor.cpp:154 kgraphviewer.cpp:118 +msgid "Reload Confirmation" +msgstr "Confirmation du rechargement" + +#: kgrapheditor.cpp:199 kgraphviewer.cpp:161 +msgid "Could not find our part." +msgstr "Ne peut trouver notre partie." + +#: kgrapheditor.cpp:250 +msgid "Create a New Vertex" +msgstr "Créer un nouveau sommet" + +#: kgrapheditor.cpp:255 +msgid "Create a New Edge" +msgstr "Créer une nouvelle arête" + +#: kgrapheditor.cpp:514 +msgid "Save current graph to..." +msgstr "Enregistrer le graphe courant vers..." + +#: kgrapheditorConfigDialog.cpp:61 kgraphviewerConfigDialog.cpp:61 +msgid "Reloading" +msgstr "Rechargement" + +#: kgrapheditorConfigDialog.cpp:62 kgraphviewerConfigDialog.cpp:62 +msgid "Opening" +msgstr "Ouverture" + +#: kgrapheditorConfigDialog.cpp:63 kgraphviewerConfigDialog.cpp:63 +msgid "Session Management" +msgstr "Gestion de session" + +#: kgrapheditormain.cpp:38 main.cpp:38 +msgid "A Graphviz dot graph viewer for KDE" +msgstr "Une visionneuse de graphes dot au format Graphviz pour KDE" + +#: kgrapheditormain.cpp:44 +msgid "KGraphEditor" +msgstr "KGraphEditor" + +#: kgrapheditormain.cpp:45 +msgid "(C) 2005-2006 Gael de Chalendar" +msgstr "(C) 2005-2006 Gael de Chalendar" + +#: kgrapheditormain.cpp:46 +msgid "Gael de Chalendar" +msgstr "Gael de Chalendar " + +#: kgrapheditormain.cpp:50 main.cpp:50 +msgid "Dot graph to open" +msgstr "Graphe dot à ouvrir" + +#: kgrapheditormain.cpp:82 +msgid "There is already a KGraphEditor window opened. What's your choice ?" +msgstr "Il y a déjà une fenêtre KGraphEditor ouverte. Quel est votre choix ?" + +#: kgrapheditormain.cpp:83 main.cpp:83 +msgid "Opening in new window confirmation" +msgstr "Confirmation d'ouverture dans une nouvelle fenêtre" + +#: kgraphviewer.cpp:206 +msgid "" +"This lists files which you have opened recently, and allows you to easily " +"open them again." +msgstr "" +"Ceci liste les fichiers que vous avez récemment ouverts et vous permet de " +"les ouvrir plus facilement." + +#: main.cpp:44 +msgid "KGraphViewer" +msgstr "KGraphViewer" + +#: main.cpp:45 +msgid "(C) 2005-2006 Gaël de Chalendar" +msgstr "(C) 2005-2006 Gaël de Chalendar" + +#: main.cpp:46 +msgid "Gaël de Chalendar" +msgstr "Gaël de Chalendar" + +#: main.cpp:82 +msgid "There is already a KGraphViewer window opened. What's your choice ?" +msgstr "Il y a déjà une fenêtre KGraphVIewer ouverte. Que choisissez-vous ?" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 7 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 7 +#: rc.cpp:3 rc.cpp:42 +msgid "The answer to the question 'File modified, do you want to reload it'" +msgstr "La réponse à la question 'Fichier modifié, voulez-vous le recharger'" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 11 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 11 +#: rc.cpp:6 rc.cpp:45 +msgid "" +"The answer to the question 'If another window already exist when launching " +"kgraphviewer, should we open in it, open a new window or ask ?'" +msgstr "" +"La réponse à la question 'Si une autre fenêtre existe lors du lancement de " +"kgraphviewer, devons nous l'ouvrir dans celle-ci, ouvrir une nouvelle " +"fenêtre ou demander ? " + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 15 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 15 +#: rc.cpp:9 rc.cpp:48 +msgid "" +"The answer to the question 'Should the files that where opened in previous " +"sessions be reopened at startup ?'" +msgstr "" +"La réponse à la question 'Les fichiers qui étaient ouverts dans les sessions " +"précédentes doivent-ils être ouverts à nouveau au démarrage ? " + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 19 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 19 +#: rc.cpp:12 rc.cpp:51 +msgid "If true, the bird's eye view will be shown if needed." +msgstr "Si vrai, la vue d'oiseau sera montrée en cas de besoin." + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 23 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 23 +#: rc.cpp:15 rc.cpp:54 +msgid "The list of files that were opened in past instances of kgraphviewer" +msgstr "" +"La liste des fichiers qui étaient ouverts dans les instances précédentes de " +"kgraphviewer" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 4 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 4 +#: rc.cpp:18 rc.cpp:57 rc.cpp:203 rc.cpp:221 +msgid "&File" +msgstr "&Fichier" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 14 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 14 +#: rc.cpp:21 rc.cpp:224 +msgid "&Edit" +msgstr "&Édition" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 19 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 19 +#: rc.cpp:24 rc.cpp:60 rc.cpp:206 rc.cpp:227 +msgid "&View" +msgstr "&Affichage" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 22 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 22 +#: rc.cpp:27 rc.cpp:63 rc.cpp:209 rc.cpp:230 +msgid "&Settings" +msgstr "&Paramètres" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 34 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 34 +#: rc.cpp:30 rc.cpp:66 rc.cpp:212 rc.cpp:233 +msgid "Main Toolbar" +msgstr "Outils principaux" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 41 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 41 +#: rc.cpp:33 rc.cpp:69 rc.cpp:215 rc.cpp:236 +msgid "View Toolbar" +msgstr "Outils d'affichage" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 44 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 44 +#: rc.cpp:36 rc.cpp:72 rc.cpp:218 rc.cpp:239 +msgid "Help Toolbar" +msgstr "Outils d'aides" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 49 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 49 +#: rc.cpp:39 rc.cpp:242 +msgid "Edit Toolbar" +msgstr "Outils d'édition" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 41 +#: rc.cpp:75 rc.cpp:191 +msgid "Open in existing window" +msgstr "Ouvrir dans une fenêtre existante" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 78 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 78 +#: rc.cpp:78 rc.cpp:90 rc.cpp:105 rc.cpp:194 rc.cpp:248 rc.cpp:263 +msgid "&Yes" +msgstr "&Oui" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 62 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 62 +#: rc.cpp:81 rc.cpp:93 rc.cpp:102 rc.cpp:197 rc.cpp:251 rc.cpp:260 +msgid "No" +msgstr "Non" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 91 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 91 +#: rc.cpp:84 rc.cpp:108 rc.cpp:200 rc.cpp:266 +msgid "As&k" +msgstr "&Demander" + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 41 +#: rc.cpp:87 rc.cpp:245 +msgid "Reload files modified on disk" +msgstr "Recharger les fichiers modifiés sur le disque " + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 85 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 85 +#: rc.cpp:96 rc.cpp:254 +msgid "Ask" +msgstr "Demander" + +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 41 +#: rc.cpp:99 rc.cpp:257 +msgid "Reopen previously opened files" +msgstr "Ouvrir à nouveau les fichiers précédemment ouverts" + +#: rc.cpp:109 +msgctxt "NAME OF TRANSLATORS" +msgid "Your names" +msgstr "Cédric ROUSSEL" + +#: rc.cpp:110 +msgctxt "EMAIL OF TRANSLATORS" +msgid "Your emails" +msgstr "roussel.cedric@gmail.com" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 29 +#: rc.cpp:113 +msgid "Columns:" +msgstr "Colonnes :" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 39 +#: rc.cpp:116 +msgid "Column spacing:" +msgstr "Espacement des colonnes :" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 36 +#: rc.cpp:119 +msgid "." +msgstr "." + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 140 +#: rc.cpp:122 +msgid "Page &font:" +msgstr "&Police de page :" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 201 +#: rc.cpp:125 +msgid "Page Size && Margins" +msgstr "Taille de la page && des marges" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 257 +#: rc.cpp:128 +msgid "Add &borders" +msgstr "Ajouter des &bordures" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 264 +#: rc.cpp:131 +msgid "Add date and time" +msgstr "Ajouter l'heure et la date" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 290 +#: rc.cpp:134 +msgid "Add page numbers" +msgstr "Ajouter numéros de page" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 314 +#: rc.cpp:137 +msgid "Number of pages to fit on" +msgstr "Nombre de pages à utiliser" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 365 +#: rc.cpp:140 +msgid "Horizontaly" +msgstr "Horizontalement" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 382 +#: rc.cpp:143 +msgid "Verticaly" +msgstr "Verticalement" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 417 +#: rc.cpp:146 +msgid "Natural size" +msgstr "Taille naturelle" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 424 +#: rc.cpp:149 +msgid "Fit to one page" +msgstr "Utiliser une seule page" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 431 +#: rc.cpp:152 +msgid "Fit to several pages" +msgstr "Utiliser plusieurs pages" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 459 +#: rc.cpp:155 +msgid "Related actions:" +msgstr "Actions liées :" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 531 +#: rc.cpp:158 +msgid "Close" +msgstr "Fermer" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 19 +#: rc.cpp:161 +msgid "Header" +msgstr "En-tête" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 25 +#: rc.cpp:164 +msgid "Different header for the first page" +msgstr "En-tête différent de la première page" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 32 +#: rc.cpp:167 +msgid "Different header for even and odd pages" +msgstr "En-tête différent pour les pages paires et impaires" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 60 +#: rc.cpp:170 +msgid "Spacing between header and body:" +msgstr "Espacement entre l'en-tête et le corps :" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 82 +#: rc.cpp:173 +msgid "Footer" +msgstr "Pied de page" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 88 +#: rc.cpp:176 +msgid "Different footer for the first page" +msgstr "Pied de page différent pour la première page" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 95 +#: rc.cpp:179 +msgid "Different footer for even and odd pages" +msgstr "Pied de page différent pour les pages paires et impaires" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 123 +#: rc.cpp:182 +msgid "Spacing between footer and body:" +msgstr "Espacement entre le pied de page et le corps :" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 145 +#: rc.cpp:185 +msgid "Footnote/Endnote" +msgstr "Note de bas de page/Note de fin" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 167 +#: rc.cpp:188 +msgid "Spacing between footnote and body:" +msgstr "Espacement entre la note de bas de page et le corps :" --- kgraphviewer-kde4-2.0.orig/po/uk/CMakeLists.txt +++ kgraphviewer-kde4-2.0/po/uk/CMakeLists.txt @@ -0,0 +1,2 @@ +file(GLOB _po_files *.po) +GETTEXT_PROCESS_PO_FILES( uk ALL INSTALL_DESTINATION ${LOCALE_INSTALL_DIR} ${_po_files} ) --- kgraphviewer-kde4-2.0.orig/po/uk/kgraphviewer.po +++ kgraphviewer-kde4-2.0/po/uk/kgraphviewer.po @@ -0,0 +1,500 @@ +# translation of kgraphviewer.po to Ukrainian +# Copyright (C) YEAR This_file_is_part_of_KDE +# This file is distributed under the same license as the PACKAGE package. +# +# Yuri Chornoivan , 2008. +msgid "" +msgstr "" +"Project-Id-Version: kgraphviewer\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2007-12-04 06:08+0100\n" +"PO-Revision-Date: 2008-02-10 14:56+0200\n" +"Last-Translator: Yuri Chornoivan \n" +"Language-Team: Ukrainian \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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" +"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: KGraphEditorElementTreeWidget.cpp:51 KGraphEditorNodesTreeWidget.cpp:56 +msgid "Add a new attribute" +msgstr "Додати новий атрибут" + +#: KGraphEditorElementTreeWidget.cpp:58 KGraphEditorNodesTreeWidget.cpp:63 +msgid "Remove this attribute" +msgstr "Вилучити цей атрибут" + +#: KGraphEditorNodesTreeWidget.cpp:69 +msgid "Remove this node" +msgstr "Вилучити цей вузол" + +#: kgrapheditor.cpp:153 kgraphviewer.cpp:117 +msgid "Do you want to reload files from previous session ?" +msgstr "Чи бажаєте ви знову завантажити файли з попереднього сеансу?" + +#: kgrapheditor.cpp:154 kgraphviewer.cpp:118 +msgid "Reload Confirmation" +msgstr "Підтвердження перезавантаження" + +#: kgrapheditor.cpp:199 kgraphviewer.cpp:161 +msgid "Could not find our part." +msgstr "Не знайдено нашої частини." + +#: kgrapheditor.cpp:250 +msgid "Create a New Vertex" +msgstr "Створити нову вершину" + +#: kgrapheditor.cpp:255 +msgid "Create a New Edge" +msgstr "Створити нове ребро" + +#: kgrapheditor.cpp:514 +msgid "Save current graph to..." +msgstr "Зберегти поточний графік до..." + +#: kgrapheditorConfigDialog.cpp:61 kgraphviewerConfigDialog.cpp:61 +msgid "Reloading" +msgstr "Перезавантаження" + +#: kgrapheditorConfigDialog.cpp:62 kgraphviewerConfigDialog.cpp:62 +msgid "Opening" +msgstr "Відкриття" + +#: kgrapheditorConfigDialog.cpp:63 kgraphviewerConfigDialog.cpp:63 +msgid "Session Management" +msgstr "Керування сеансами" + +#: kgrapheditormain.cpp:38 main.cpp:38 +msgid "A Graphviz dot graph viewer for KDE" +msgstr "Переглядач точкових графіків Graphviz для KDE" + +#: kgrapheditormain.cpp:44 +msgid "KGraphEditor" +msgstr "KGraphEditor" + +#: kgrapheditormain.cpp:45 +msgid "(C) 2005-2006 Gael de Chalendar" +msgstr "(C) 2005-2006 Gael de Chalendar" + +#: kgrapheditormain.cpp:46 +msgid "Gael de Chalendar" +msgstr "Gael de Chalendar" + +#: kgrapheditormain.cpp:50 main.cpp:50 +msgid "Dot graph to open" +msgstr "Точковий графік, що відкривається" + +#: kgrapheditormain.cpp:82 +msgid "There is already a KGraphEditor window opened. What's your choice ?" +msgstr "Вікно KGraphEditor вже відкрито. Що робити?" + +#: kgrapheditormain.cpp:83 main.cpp:83 +msgid "Opening in new window confirmation" +msgstr "Підтвердження відкриття нового вікна" + +#: kgraphviewer.cpp:206 +msgid "" +"This lists files which you have opened recently, and allows you to easily " +"open them again." +msgstr "" +"Тут показано список файлів, які ви нещодавно відкривали, це дозволяє вам " +"легко відкрити їх знову." + +#: main.cpp:44 +msgid "KGraphViewer" +msgstr "KGraphViewer" + +#: main.cpp:45 +msgid "(C) 2005-2006 Gaël de Chalendar" +msgstr "(C) 2005-2006 Gaël de Chalendar" + +#: main.cpp:46 +msgid "Gaël de Chalendar" +msgstr "Gaël de Chalendar" + +#: main.cpp:82 +msgid "There is already a KGraphViewer window opened. What's your choice ?" +msgstr "Вікно KGraphViewer вже відкрито. Що робити?" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 7 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 7 +#: rc.cpp:3 rc.cpp:42 +msgid "The answer to the question 'File modified, do you want to reload it'" +msgstr "Відповідь на питання «Файл змінено, чи бажаєте перезавантажити його»" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 11 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 11 +#: rc.cpp:6 rc.cpp:45 +msgid "" +"The answer to the question 'If another window already exist when launching " +"kgraphviewer, should we open in it, open a new window or ask ?'" +msgstr "" +"Відоповідь на питання «Якщо інше вікно вже відкрито під час запуску " +"kgraphviewer, чи відкривати файл у ньому, відкрити у новому вікні або " +"запитати?»" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 15 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 15 +#: rc.cpp:9 rc.cpp:48 +msgid "" +"The answer to the question 'Should the files that where opened in previous " +"sessions be reopened at startup ?'" +msgstr "" +"Відповідь на питання «Чи потрібно відкривати файли раніше відкриті у " +"попередніх сеансах після запуску?»" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 19 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 19 +#: rc.cpp:12 rc.cpp:51 +msgid "If true, the bird's eye view will be shown if needed." +msgstr "" +"Якщо встановлено значення \"так\", у разі потреби, буде показано вигляд з " +"верхньої точки." + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 23 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 23 +#: rc.cpp:15 rc.cpp:54 +msgid "The list of files that were opened in past instances of kgraphviewer" +msgstr "Список файлів, які раніше відкривалися у kgraphviewer" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 4 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 4 +#: rc.cpp:18 rc.cpp:57 rc.cpp:203 rc.cpp:221 +msgid "&File" +msgstr "&Файл" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 14 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 14 +#: rc.cpp:21 rc.cpp:224 +msgid "&Edit" +msgstr "&Правка" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 19 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 19 +#: rc.cpp:24 rc.cpp:60 rc.cpp:206 rc.cpp:227 +msgid "&View" +msgstr "&Вигляд" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 22 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 22 +#: rc.cpp:27 rc.cpp:63 rc.cpp:209 rc.cpp:230 +msgid "&Settings" +msgstr "П&араметри" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 34 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 34 +#: rc.cpp:30 rc.cpp:66 rc.cpp:212 rc.cpp:233 +msgid "Main Toolbar" +msgstr "Головний пенал" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 41 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 41 +#: rc.cpp:33 rc.cpp:69 rc.cpp:215 rc.cpp:236 +msgid "View Toolbar" +msgstr "Пенал перегляду" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 44 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 44 +#: rc.cpp:36 rc.cpp:72 rc.cpp:218 rc.cpp:239 +msgid "Help Toolbar" +msgstr "Пенал довідки" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 49 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 49 +#: rc.cpp:39 rc.cpp:242 +msgid "Edit Toolbar" +msgstr "Пенал редагування" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 41 +#: rc.cpp:75 rc.cpp:191 +msgid "Open in existing window" +msgstr "Відкрити у існуючому вікні" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 78 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 78 +#: rc.cpp:78 rc.cpp:90 rc.cpp:105 rc.cpp:194 rc.cpp:248 rc.cpp:263 +msgid "&Yes" +msgstr "&Так" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 62 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 62 +#: rc.cpp:81 rc.cpp:93 rc.cpp:102 rc.cpp:197 rc.cpp:251 rc.cpp:260 +msgid "No" +msgstr "Ні" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 91 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 91 +#: rc.cpp:84 rc.cpp:108 rc.cpp:200 rc.cpp:266 +msgid "As&k" +msgstr "За&питати" + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 41 +#: rc.cpp:87 rc.cpp:245 +msgid "Reload files modified on disk" +msgstr "Перезавантажити файли, змінені на диску" + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 85 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 85 +#: rc.cpp:96 rc.cpp:254 +msgid "Ask" +msgstr "Запитати" + +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 41 +#: rc.cpp:99 rc.cpp:257 +msgid "Reopen previously opened files" +msgstr "Перевідкрити попередньо відкриті файли" + +#: rc.cpp:109 +msgctxt "NAME OF TRANSLATORS" +msgid "Your names" +msgstr "о.Іван Петрущак,Юрій Чорноіван" + +#: rc.cpp:110 +msgctxt "EMAIL OF TRANSLATORS" +msgid "Your emails" +msgstr "fr.ivan@ukrainian-orthodox.org,yurchor@ukr.net" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 29 +#: rc.cpp:113 +msgid "Columns:" +msgstr "Стовпчики:" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 39 +#: rc.cpp:116 +msgid "Column spacing:" +msgstr "Інтервал між стовпчиками:" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 36 +#: rc.cpp:119 +msgid "." +msgstr "." + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 140 +#: rc.cpp:122 +msgid "Page &font:" +msgstr "&Шрифт сторінки:" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 201 +#: rc.cpp:125 +msgid "Page Size && Margins" +msgstr "Розмір сторінки і поля" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 257 +#: rc.cpp:128 +msgid "Add &borders" +msgstr "Додати &рамку" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 264 +#: rc.cpp:131 +msgid "Add date and time" +msgstr "Додати дату і час" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 290 +#: rc.cpp:134 +msgid "Add page numbers" +msgstr "Додати номери сторінок" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 314 +#: rc.cpp:137 +msgid "Number of pages to fit on" +msgstr "Кількість сторінок для підбору" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 365 +#: rc.cpp:140 +msgid "Horizontaly" +msgstr "Горизонтально" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 382 +#: rc.cpp:143 +msgid "Verticaly" +msgstr "Вертикально" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 417 +#: rc.cpp:146 +msgid "Natural size" +msgstr "Справжній розмір" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 424 +#: rc.cpp:149 +msgid "Fit to one page" +msgstr "Підібрати під одну сторінку" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 431 +#: rc.cpp:152 +msgid "Fit to several pages" +msgstr "Підібрати під декілька сторінок" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 459 +#: rc.cpp:155 +msgid "Related actions:" +msgstr "Відповідні дії:" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 531 +#: rc.cpp:158 +msgid "Close" +msgstr "Закрити" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 19 +#: rc.cpp:161 +msgid "Header" +msgstr "Шапка" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 25 +#: rc.cpp:164 +msgid "Different header for the first page" +msgstr "Окрема шапка для першої сторінки" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 32 +#: rc.cpp:167 +msgid "Different header for even and odd pages" +msgstr "Різні шапки для парних і непарних сторінок" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 60 +#: rc.cpp:170 +msgid "Spacing between header and body:" +msgstr "Інтервал між шапкою та текстом:" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 82 +#: rc.cpp:173 +msgid "Footer" +msgstr "Підвал" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 88 +#: rc.cpp:176 +msgid "Different footer for the first page" +msgstr "Окремий підвал для першої сторінки" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 95 +#: rc.cpp:179 +msgid "Different footer for even and odd pages" +msgstr "Різні підвали для парних і непарних сторінок" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 123 +#: rc.cpp:182 +msgid "Spacing between footer and body:" +msgstr "Інтервал між зноскою і текстом:" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 145 +#: rc.cpp:185 +msgid "Footnote/Endnote" +msgstr "Зноска/Примітка" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 167 +#: rc.cpp:188 +msgid "Spacing between footnote and body:" +msgstr "Інтервал між зноскою і текстом:" --- kgraphviewer-kde4-2.0.orig/po/CMakeLists.txt +++ kgraphviewer-kde4-2.0/po/CMakeLists.txt @@ -3,6 +3,7 @@ add_subdirectory( de ) add_subdirectory( el ) add_subdirectory( et ) +add_subdirectory( fr ) add_subdirectory( ga ) add_subdirectory( gl ) add_subdirectory( ja ) @@ -15,9 +16,11 @@ add_subdirectory( pl ) add_subdirectory( pt ) add_subdirectory( pt_BR ) +add_subdirectory( ro ) add_subdirectory( se ) add_subdirectory( sk ) add_subdirectory( sv ) add_subdirectory( tr ) +add_subdirectory( uk ) add_subdirectory( vi ) add_subdirectory( zh_CN ) --- kgraphviewer-kde4-2.0.orig/po/km/kgraphviewer.po +++ kgraphviewer-kde4-2.0/po/km/kgraphviewer.po @@ -3,13 +3,14 @@ # This file is distributed under the same license as the PACKAGE package. # # Khoem Sokhem , 2008. +# Auk Piseth , 2008. msgid "" msgstr "" "Project-Id-Version: kgraphviewer\n" "Report-Msgid-Bugs-To: http://bugs.kde.org\n" "POT-Creation-Date: 2007-12-04 06:08+0100\n" -"PO-Revision-Date: 2008-01-24 10:10+0700\n" -"Last-Translator: Khoem Sokhem \n" +"PO-Revision-Date: 2008-02-12 18:06+0700\n" +"Last-Translator: Auk Piseth \n" "Language-Team: Khmer \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -340,15 +341,13 @@ #, fuzzy msgctxt "NAME OF TRANSLATORS" msgid "Your names" -msgstr "ខឹម សុខែម, ប៉ុច សុគន្ធ, អេង វណ្ណៈ, អោក ពិសិដ្ឋ" +msgstr "ខឹម សុខែម,​ អេង វណ្ណៈ, អោក ពិសិដ្ឋ" #: rc.cpp:110 #, fuzzy msgctxt "EMAIL OF TRANSLATORS" msgid "Your emails" -msgstr "" -"khoemsokhem@khmeros.info,sokun_poch@khmeros.info,evannak@khmeros.info," -"piseth_dv@khmeros.info" +msgstr "khoemsokhem@khmeros.info,​evannak@khmeros.info,piseth_dv@khmeros.info" #. i18n: tag string #. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 29 --- kgraphviewer-kde4-2.0.orig/po/ro/CMakeLists.txt +++ kgraphviewer-kde4-2.0/po/ro/CMakeLists.txt @@ -0,0 +1,2 @@ +file(GLOB _po_files *.po) +GETTEXT_PROCESS_PO_FILES( ro ALL INSTALL_DESTINATION ${LOCALE_INSTALL_DIR} ${_po_files} ) --- kgraphviewer-kde4-2.0.orig/po/ro/kgraphviewer.po +++ kgraphviewer-kde4-2.0/po/ro/kgraphviewer.po @@ -0,0 +1,490 @@ +# translation of kgraphviewer to Romanian +# Copyright (C) 2008 This_file_is_part_of_KDE +# This file is distributed under the same license as the kgraphviewer package. +# Laurenţiu Buzdugan , 2008" +# +msgid "" +msgstr "" +"Project-Id-Version: kgraphviewer\n" +"Report-Msgid-Bugs-To: http://bugs.kde.org\n" +"POT-Creation-Date: 2007-12-04 06:08+0100\n" +"PO-Revision-Date: 2008-02-27 22:00-0500\n" +"Last-Translator: Laurenţiu Buzdugan ,\n" +"Language-Team: Romanian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || ((n%100) > 0 && (n%" +"100) < 20)) ? 1 : 2);\n" + +#: KGraphEditorElementTreeWidget.cpp:51 KGraphEditorNodesTreeWidget.cpp:56 +msgid "Add a new attribute" +msgstr "" + +#: KGraphEditorElementTreeWidget.cpp:58 KGraphEditorNodesTreeWidget.cpp:63 +msgid "Remove this attribute" +msgstr "" + +#: KGraphEditorNodesTreeWidget.cpp:69 +msgid "Remove this node" +msgstr "" + +#: kgrapheditor.cpp:153 kgraphviewer.cpp:117 +msgid "Do you want to reload files from previous session ?" +msgstr "" + +#: kgrapheditor.cpp:154 kgraphviewer.cpp:118 +msgid "Reload Confirmation" +msgstr "" + +#: kgrapheditor.cpp:199 kgraphviewer.cpp:161 +msgid "Could not find our part." +msgstr "" + +#: kgrapheditor.cpp:250 +msgid "Create a New Vertex" +msgstr "" + +#: kgrapheditor.cpp:255 +msgid "Create a New Edge" +msgstr "" + +#: kgrapheditor.cpp:514 +msgid "Save current graph to..." +msgstr "" + +#: kgrapheditorConfigDialog.cpp:61 kgraphviewerConfigDialog.cpp:61 +msgid "Reloading" +msgstr "" + +#: kgrapheditorConfigDialog.cpp:62 kgraphviewerConfigDialog.cpp:62 +msgid "Opening" +msgstr "" + +#: kgrapheditorConfigDialog.cpp:63 kgraphviewerConfigDialog.cpp:63 +msgid "Session Management" +msgstr "" + +#: kgrapheditormain.cpp:38 main.cpp:38 +msgid "A Graphviz dot graph viewer for KDE" +msgstr "" + +#: kgrapheditormain.cpp:44 +msgid "KGraphEditor" +msgstr "" + +#: kgrapheditormain.cpp:45 +msgid "(C) 2005-2006 Gael de Chalendar" +msgstr "" + +#: kgrapheditormain.cpp:46 +msgid "Gael de Chalendar" +msgstr "" + +#: kgrapheditormain.cpp:50 main.cpp:50 +msgid "Dot graph to open" +msgstr "" + +#: kgrapheditormain.cpp:82 +msgid "There is already a KGraphEditor window opened. What's your choice ?" +msgstr "" + +#: kgrapheditormain.cpp:83 main.cpp:83 +msgid "Opening in new window confirmation" +msgstr "" + +#: kgraphviewer.cpp:206 +msgid "" +"This lists files which you have opened recently, and allows you to easily " +"open them again." +msgstr "" + +#: main.cpp:44 +msgid "KGraphViewer" +msgstr "" + +#: main.cpp:45 +msgid "(C) 2005-2006 Gaël de Chalendar" +msgstr "" + +#: main.cpp:46 +msgid "Gaël de Chalendar" +msgstr "" + +#: main.cpp:82 +msgid "There is already a KGraphViewer window opened. What's your choice ?" +msgstr "" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 7 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 7 +#: rc.cpp:3 rc.cpp:42 +msgid "The answer to the question 'File modified, do you want to reload it'" +msgstr "" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 11 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 11 +#: rc.cpp:6 rc.cpp:45 +msgid "" +"The answer to the question 'If another window already exist when launching " +"kgraphviewer, should we open in it, open a new window or ask ?'" +msgstr "" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 15 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 15 +#: rc.cpp:9 rc.cpp:48 +msgid "" +"The answer to the question 'Should the files that where opened in previous " +"sessions be reopened at startup ?'" +msgstr "" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 19 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 19 +#: rc.cpp:12 rc.cpp:51 +msgid "If true, the bird's eye view will be shown if needed." +msgstr "" + +#. i18n: tag label +#. i18n: file kgrapheditorsettings.kcfg line 23 +#. i18n: tag label +#. i18n: file kgraphviewersettings.kcfg line 23 +#: rc.cpp:15 rc.cpp:54 +msgid "The list of files that were opened in past instances of kgraphviewer" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 4 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 4 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 4 +#: rc.cpp:18 rc.cpp:57 rc.cpp:203 rc.cpp:221 +msgid "&File" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 14 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 14 +#: rc.cpp:21 rc.cpp:224 +msgid "&Edit" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 19 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 12 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 19 +#: rc.cpp:24 rc.cpp:60 rc.cpp:206 rc.cpp:227 +msgid "&View" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 22 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 15 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 22 +#: rc.cpp:27 rc.cpp:63 rc.cpp:209 rc.cpp:230 +msgid "&Settings" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 34 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 27 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 34 +#: rc.cpp:30 rc.cpp:66 rc.cpp:212 rc.cpp:233 +msgid "Main Toolbar" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 41 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 32 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 41 +#: rc.cpp:33 rc.cpp:69 rc.cpp:215 rc.cpp:236 +msgid "View Toolbar" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 44 +#. i18n: tag text +#. i18n: file kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgraphviewerui.rc line 35 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 44 +#: rc.cpp:36 rc.cpp:72 rc.cpp:218 rc.cpp:239 +msgid "Help Toolbar" +msgstr "" + +#. i18n: tag text +#. i18n: file kgrapheditorui.rc line 49 +#. i18n: tag text +#. i18n: file ./kgrapheditorui.rc line 49 +#: rc.cpp:39 rc.cpp:242 +msgid "Edit Toolbar" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 41 +#: rc.cpp:75 rc.cpp:191 +msgid "Open in existing window" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 78 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 53 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 56 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 78 +#: rc.cpp:78 rc.cpp:90 rc.cpp:105 rc.cpp:194 rc.cpp:248 rc.cpp:263 +msgid "&Yes" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 62 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 66 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 69 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 62 +#: rc.cpp:81 rc.cpp:93 rc.cpp:102 rc.cpp:197 rc.cpp:251 rc.cpp:260 +msgid "No" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 91 +#. i18n: tag string +#. i18n: file ./preferencesOpenInExistingWindow.ui line 82 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 91 +#: rc.cpp:84 rc.cpp:108 rc.cpp:200 rc.cpp:266 +msgid "As&k" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 41 +#: rc.cpp:87 rc.cpp:245 +msgid "Reload files modified on disk" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesReload.ui line 85 +#. i18n: tag string +#. i18n: file ./preferencesReload.ui line 85 +#: rc.cpp:96 rc.cpp:254 +msgid "Ask" +msgstr "" + +#. i18n: tag string +#. i18n: file preferencesReopenPreviouslyOpenedFiles.ui line 41 +#. i18n: tag string +#. i18n: file ./preferencesReopenPreviouslyOpenedFiles.ui line 41 +#: rc.cpp:99 rc.cpp:257 +msgid "Reopen previously opened files" +msgstr "" + +#: rc.cpp:109 +msgctxt "NAME OF TRANSLATORS" +msgid "Your names" +msgstr "" + +#: rc.cpp:110 +msgctxt "EMAIL OF TRANSLATORS" +msgid "Your emails" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 29 +#: rc.cpp:113 +msgid "Columns:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutColumnsBase.ui line 39 +#: rc.cpp:116 +msgid "Column spacing:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 36 +#: rc.cpp:119 +msgid "." +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 140 +#: rc.cpp:122 +msgid "Page &font:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 201 +#: rc.cpp:125 +msgid "Page Size && Margins" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 257 +#: rc.cpp:128 +msgid "Add &borders" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 264 +#: rc.cpp:131 +msgid "Add date and time" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 290 +#: rc.cpp:134 +msgid "Add page numbers" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 314 +#: rc.cpp:137 +msgid "Number of pages to fit on" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 365 +#: rc.cpp:140 +msgid "Horizontaly" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 382 +#: rc.cpp:143 +msgid "Verticaly" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 417 +#: rc.cpp:146 +msgid "Natural size" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 424 +#: rc.cpp:149 +msgid "Fit to one page" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 431 +#: rc.cpp:152 +msgid "Fit to several pages" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 459 +#: rc.cpp:155 +msgid "Related actions:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/simpleprintingpagesetupbase.ui line 531 +#: rc.cpp:158 +msgid "Close" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 19 +#: rc.cpp:161 +msgid "Header" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 25 +#: rc.cpp:164 +msgid "Different header for the first page" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 32 +#: rc.cpp:167 +msgid "Different header for even and odd pages" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 60 +#: rc.cpp:170 +msgid "Spacing between header and body:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 82 +#: rc.cpp:173 +msgid "Footer" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 88 +#: rc.cpp:176 +msgid "Different footer for the first page" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 95 +#: rc.cpp:179 +msgid "Different footer for even and odd pages" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 123 +#: rc.cpp:182 +msgid "Spacing between footer and body:" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 145 +#: rc.cpp:185 +msgid "Footnote/Endnote" +msgstr "" + +#. i18n: tag string +#. i18n: file ./part/KgvPageLayoutHeaderBase.ui line 167 +#: rc.cpp:188 +msgid "Spacing between footnote and body:" +msgstr "" --- kgraphviewer-kde4-2.0.orig/src/part/kgraphviewer_part.cpp +++ kgraphviewer-kde4-2.0/src/part/kgraphviewer_part.cpp @@ -63,6 +63,8 @@ this, SIGNAL( newNodeAdded(const QString&) ) ); connect( m_widget, SIGNAL( removeEdge(const QString&) ), this, SIGNAL( removeEdge(const QString&) ) ); + connect( m_widget, SIGNAL( removeElement(const QString&) ), + this, SIGNAL( removeElement(const QString&) ) ); // notify the part that this is our internal widget setWidget(m_widget); @@ -275,6 +277,12 @@ m_widget->graph()->removeEdge(id); } +void kgraphviewerPart::slotRemoveElement(const QString& id) +{ + kDebug(); + m_widget->graph()->removeElement(id); +} + /*It's usually safe to leave the factory code alone.. with the notable exception of the KAboutData data*/ #include --- kgraphviewer-kde4-2.0.orig/src/part/canvasedge.h +++ kgraphviewer-kde4-2.0/src/part/canvasedge.h @@ -70,9 +70,11 @@ void paint(QPainter* p, const QStyleOptionGraphicsItem *option, QWidget *widget); - GraphEdge* edge() { return m_edge; } - const GraphEdge* edge() const { return m_edge; } + inline GraphEdge* edge() { return m_edge; } + inline const GraphEdge* edge() const { return m_edge; } + inline void setGh(qreal gh) {m_gh = gh;} + void computeBoundingRect(); Q_SIGNALS: --- kgraphviewer-kde4-2.0.orig/src/part/canvaselement.cpp +++ kgraphviewer-kde4-2.0/src/part/canvaselement.cpp @@ -30,6 +30,8 @@ #include #include +#include +#include #include #include @@ -38,6 +40,7 @@ #include #include #include +#include CanvasElement::CanvasElement( DotGraphView* v, @@ -48,7 +51,8 @@ : QObject(), QAbstractGraphicsShapeItem(parent), m_element(gelement), m_view(v), m_font(0), - m_pen(Dot2QtConsts::componentData().qtColor(gelement->fontColor())) + m_pen(Dot2QtConsts::componentData().qtColor(gelement->fontColor())), + m_popup(new QMenu()) { // kDebug(); m_font = FontsCache::changeable().fromName(gelement->fontName()); @@ -82,6 +86,27 @@ m_brush = c->backgroundBrush(); } + // the message should be given (or possible to be given) by the part user + KAction* removeElementAction = new KAction(i18n("Remove selected element(s)"), this); + m_popup->addAction(removeElementAction); + connect(removeElementAction,SIGNAL(triggered(bool)),this,SLOT(slotRemoveElement())); + + connect(this, SIGNAL(selected(CanvasElement*, Qt::KeyboardModifiers)), v, SLOT(slotElementSelected(CanvasElement*, Qt::KeyboardModifiers))); + +} + +CanvasElement::~CanvasElement() +{ + delete m_popup; +} + +void CanvasElement::modelChanged() +{ + kDebug() ;//<< id(); + m_pen = QPen(Dot2QtConsts::componentData().qtColor(m_element->fontColor())); + m_font = FontsCache::changeable().fromName(m_element->fontName()); + prepareGeometryChange(); + computeBoundingRect(); } void CanvasElement::initialize(qreal scaleX, qreal scaleY, @@ -167,7 +192,7 @@ } } } -// kDebug() << element()->id() << "new bounding rect is:" << m_boundingRect; + setPos(0,0); } void CanvasElement::paint(QPainter* p, const QStyleOptionGraphicsItem *option, @@ -194,6 +219,7 @@ p->drawPixmap(QPointF(0,0),m_view->defaultNewElementPixmap()); return; } + QListIterator it(element()->renderOperations()); it.toBack(); while (it.hasPrevious()) @@ -209,7 +235,8 @@ p->save(); p->setBrush(Dot2QtConsts::componentData().qtColor(element()->backColor())); p->setPen(Dot2QtConsts::componentData().qtColor(element()->lineColor())); -// kDebug() << element()->id() << "drawEllipse" << element()->backColor() << rect; + kDebug() << element()->id() << "drawEllipse" << element()->backColor() << rect; +// rect = QRectF(0,0,100,100); p->drawEllipse(rect); p->restore(); } @@ -258,6 +285,7 @@ { p->setBrush(canvas()->backgroundColor()); }*/ + kDebug() << element()->id() << "drawPolygon" << points; p->drawPolygon(points); p->restore(); if (!element()->shapeFile().isEmpty()) @@ -303,7 +331,7 @@ pen.setStyle(Dot2QtConsts::componentData().qtPenStyle(element()->style())); } p->setPen(pen); -// kDebug() << element()->id() << "drawPolyline" << points; + kDebug() << element()->id() << "drawPolyline" << points; p->drawPolyline(points); p->restore(); } @@ -319,14 +347,15 @@ if ( dro.renderop == "T" ) { // draw a label -/* kDebug() << "Drawing a label " << (*it).integers[0] - << " " << (*it).integers[1] << " " << (*it).integers[2] - << " " << (*it).integers[3] << " " << (*it).str - << " (" << element()->fontName() << ", " << element()->fontSize() - << ", " << element()->fontColor() << ")";*/ +// kDebug() << "Drawing a label " << (*itl).integers[0] +// << " " << (*itl).integers[1] << " " << (*itl).integers[2] +// << " " << (*itl).integers[3] << " " << (*itl).str +// << " (" << element()->fontName() << ", " << element()->fontSize() +// << ", " << element()->fontColor() << ")"; int stringWidthGoal = int(dro.integers[3] * m_scaleX); int fontSize = element()->fontSize(); +// kDebug() << element()->id() << " initial fontSize " << fontSize; m_font->setPointSize(fontSize); QFontMetrics fm(*m_font); while (fm.width(dro.str) > stringWidthGoal && fontSize > 1) @@ -348,28 +377,69 @@ + m_xMargin; qreal y = ((m_gh - (dro.integers[1]))*m_scaleY)+ m_yMargin; QPointF point(x,y); -// kDebug() << element()->id() << "drawText" << point; + kDebug() << element()->id() << "drawText" << point << " " << fontSize; p->drawText(point, dro.str); p->restore(); } } -// p->drawRect(QRectF(pos(),boundingRect().bottomRight())); + if (element()->isSelected()) + { + kDebug() << "element is selected: draw selection marks"; + p->save(); + p->setBrush(Qt::black); + p->setPen(Qt::black); + p->drawRect(QRectF(m_boundingRect.topLeft(),QSizeF(6,6))); + p->drawRect(QRectF(m_boundingRect.topRight()-QPointF(6,0),QSizeF(6,6))); + p->drawRect(QRectF(m_boundingRect.bottomLeft()-QPointF(0,6),QSizeF(6,6))); + p->drawRect(QRectF(m_boundingRect.bottomRight()-QPointF(6,6),QSizeF(6,6))); + p->restore(); +} } void CanvasElement::mousePressEvent(QGraphicsSceneMouseEvent* event) { - Q_UNUSED(event) kDebug() << m_element->id() << boundingRect(); + if (m_view->isReadOnly()) + { + return; + } if (m_view->editingMode() == DotGraphView::AddNewEdge) { m_view->createNewEdgeDraftFrom(this); + return; } else if (m_view->editingMode() == DotGraphView::DrawNewEdge) { m_view->finishNewEdgeTo(this); + return; + } + if (event->button() == Qt::LeftButton) + { + m_element->setSelected(!m_element->isSelected()); + if (m_element->isSelected()) + { + emit(selected(this,event->modifiers())); + } + update(); + } + else if (event->button() == Qt::RightButton) + { + // opens the selected edge contextual menu and if necessary select the edge + if (!m_element->isSelected()) + { + m_element->setSelected(true); + emit(selected(this,event->modifiers())); + update(); + } + kDebug() << "opens the contextual menu"; + + m_popup->exec(event->screenPos()); } } + + + void CanvasElement::mouseMoveEvent(QGraphicsSceneMouseEvent* event) { Q_UNUSED(event) @@ -382,5 +452,10 @@ // kDebug() ; } +void CanvasElement::slotRemoveElement() +{ + kDebug(); + m_view->removeSelectedElements(); +} -#include "canvassubgraph.moc" +#include "canvaselement.moc" --- kgraphviewer-kde4-2.0.orig/src/part/dotgraph.cpp +++ kgraphviewer-kde4-2.0/src/part/dotgraph.cpp @@ -182,9 +182,9 @@ QByteArray result = getDotResult(exitCode, exitStatus); result.replace("\\\n",""); - kDebug() << "string content is:" << endl << result << endl << "=====================" << result.size(); +// kDebug() << "string content is:" << endl << result << endl << "=====================" << result.size(); std::string s = result.data(); - std::cerr << "stdstring content is:" << std::endl << s << std::endl << "===================== " << s.size() << std::endl; +// std::cerr << "stdstring content is:" << std::endl << s << std::endl << "===================== " << s.size() << std::endl; if (phelper != 0) { phelper->graph = 0; @@ -388,6 +388,10 @@ // kDebug() << "known"; nodes()[ngn->id()]->setZ(ngn->z()); nodes()[ngn->id()]->updateWith(*ngn); + if (nodes()[ngn->id()]->canvasElement()!=0) + { + nodes()[ngn->id()]->canvasElement()->setGh(m_height); + } } else { @@ -405,6 +409,10 @@ kDebug() << "edge known" << nge->id(); edges()[nge->id()]->setZ(nge->z()); edges()[nge->id()]->updateWith(*nge); + if (edges()[nge->id()]->canvasEdge()!=0) + { + edges()[nge->id()]->canvasEdge()->setGh(m_height); + } } else { @@ -425,6 +433,10 @@ if (subgraphs().contains(nsg->id())) { subgraphs().value(nsg->id())->updateWith(*nsg); + if (subgraphs().value(nsg->id())->canvasElement()!=0) + { + subgraphs().value(nsg->id())->canvasElement()->setGh(m_height); + } } else { @@ -494,5 +506,19 @@ } } +void DotGraph::removeElement(const QString& id) +{ + kDebug(); + foreach (const QString& eid, nodes().keys()) + { + GraphNode* node = nodes()[eid]; + if (node->id() ==id) + { + removeNodeNamed(id); + break; + } + } +} + #include "dotgraph.moc" --- kgraphviewer-kde4-2.0.orig/src/part/canvaselement.h +++ kgraphviewer-kde4-2.0/src/part/canvaselement.h @@ -32,16 +32,19 @@ class GraphElement; class DotGraphView; class QGraphicsScene; +class QMenu; class CanvasElement: public QObject, public QAbstractGraphicsShapeItem { +Q_OBJECT public: CanvasElement( DotGraphView* v, GraphElement* s, QGraphicsScene* c, QGraphicsItem* parent = 0); - virtual ~CanvasElement() {} + + virtual ~CanvasElement(); GraphElement* element() { return m_element; } @@ -56,7 +59,8 @@ qreal xMargin, qreal yMargin, qreal gh, qreal wdhcf, qreal hdvcf); - + inline void setGh(qreal gh) {m_gh = gh;} + protected: virtual void mouseMoveEvent ( QGraphicsSceneMouseEvent * event ); virtual void mousePressEvent ( QGraphicsSceneMouseEvent * event ); @@ -70,6 +74,14 @@ QPen m_pen; QBrush m_brush; QRectF m_boundingRect; + QMenu* m_popup; + +Q_SIGNALS: + void selected(CanvasElement*, Qt::KeyboardModifiers); + +public Q_SLOTS: + void modelChanged(); + void slotRemoveElement(); }; --- kgraphviewer-kde4-2.0.orig/src/part/graphsubgraph.cpp +++ kgraphviewer-kde4-2.0/src/part/graphsubgraph.cpp @@ -30,9 +30,7 @@ // GraphSubgraph::GraphSubgraph() : - GraphElement(), - m_cs(0), - m_visible(false) + GraphElement() { } --- kgraphviewer-kde4-2.0.orig/src/part/graphsubgraph.h +++ kgraphviewer-kde4-2.0/src/part/graphsubgraph.h @@ -43,11 +43,8 @@ virtual ~GraphSubgraph() {} - CanvasSubgraph* canvasSubgraph() { return m_cs; } - void setCanvasSubgraph(CanvasSubgraph* cs) { m_cs = cs; } - - bool isVisible() const { return m_visible; } - void setVisible(bool v) { m_visible = v; } + CanvasSubgraph* canvasSubgraph() { return (CanvasSubgraph*)canvasElement(); } + void setCanvasSubgraph(CanvasSubgraph* cs) { setCanvasElement((CanvasElement*)cs); } virtual QString backColor() const; @@ -56,8 +53,6 @@ inline void setContent(QList& c) {m_content=c;} private: - CanvasSubgraph* m_cs; - bool m_visible; QList m_content; }; --- kgraphviewer-kde4-2.0.orig/src/part/dotgraphview.h +++ kgraphviewer-kde4-2.0/src/part/dotgraphview.h @@ -131,17 +131,23 @@ inline bool isReadWrite() {return m_readWrite;} inline bool isReadOnly() {return !m_readWrite;} + void removeSelectedNodes(); void removeSelectedEdges(); + void removeSelectedElements(); -signals: +Q_SIGNALS: void zoomed(double factor); void sigViewBevEnabledToggled(bool value); void sigViewBevActivated(int newPos); void graphLoaded(); void newNodeAdded(const QString&); void newEdgeAdded(const QString&, const QString&); - /** signals that the user as activated a remove edge command */ + /** signals that the user has activated a remove edge command */ void removeEdge(const QString&); + /** signals that the user has activated a remove edge command */ + void removeNodeNamed(const QString&); + /** signals that the user has activated a remove element command */ + void removeElement(const QString&); public slots: void zoomIn(); @@ -174,6 +180,7 @@ void slotUpdate(); bool displayGraph(); void slotEdgeSelected(CanvasEdge*, Qt::KeyboardModifiers); + void slotElementSelected(CanvasElement*, Qt::KeyboardModifiers); protected: void resizeEvent(QResizeEvent*); --- kgraphviewer-kde4-2.0.orig/src/part/graphnode.h +++ kgraphviewer-kde4-2.0/src/part/graphnode.h @@ -55,30 +55,14 @@ virtual ~GraphNode() {} -// inline void x(double x) {m_x = x;} -// inline void y(double y) {m_y = y;} -// inline void w(double w) {m_w = w;} -// inline void h(double h) {m_h = h;} -// -// inline double x() const {return m_x;} -// inline double y() const {return m_y;} -// inline double w() const {return m_w;} -// inline double h() const {return m_h;} - inline CanvasNode* canvasNode() { return (CanvasNode*)canvasElement(); } inline const CanvasNode* canvasNode() const { return (const CanvasNode*)canvasElement(); } inline void setCanvasNode(CanvasNode* cn) { setCanvasElement((CanvasElement*)cn); } - bool isVisible() const { return m_visible; } - void setVisible(bool v) { m_visible = v; } - virtual void updateWith(const GraphNode& node); private: - bool m_visible; - -// double m_x, m_y, m_w, m_h; }; /** A map associating the ids of a graph's nodes to these nodes */ --- kgraphviewer-kde4-2.0.orig/src/part/canvasnode.h +++ kgraphviewer-kde4-2.0/src/part/canvasnode.h @@ -49,9 +49,6 @@ virtual ~CanvasNode() {} -public Q_SLOTS: - void modelChanged(); - }; // class CanvasHtmlNode: public KHTMLPart, public CanvasNode --- kgraphviewer-kde4-2.0.orig/src/part/graphelement.cpp +++ kgraphviewer-kde4-2.0/src/part/graphelement.cpp @@ -41,11 +41,11 @@ shape(DOT_DEFAULT_SHAPE); lineColor(DOT_DEFAULT_LINECOLOR); backColor(DOT_DEFAULT_BACKCOLOR); - fontSize(DOT_DEFAULT_FONTSIZE); fontName(DOT_DEFAULT_FONTNAME); fontColor(DOT_DEFAULT_FONTCOLOR); url(""); shapeFile("");*/ + setFontSize(DOT_DEFAULT_FONTSIZE); } GraphElement::GraphElement(const GraphElement& element) : QObject(), @@ -53,7 +53,8 @@ m_originalAttributes(), m_ce(element.m_ce), m_z(element.m_z), - m_renderOperations() + m_renderOperations(), + m_selected(element.m_selected) { kDebug() ; updateWith(element); @@ -61,7 +62,7 @@ void GraphElement::updateWith(const GraphElement& element) { -// kDebug() << m_renderOperations.size(); + kDebug(); bool modified = false; if (element.z() != m_z) { --- kgraphviewer-kde4-2.0.orig/src/part/graphelement.h +++ kgraphviewer-kde4-2.0/src/part/graphelement.h @@ -96,7 +96,11 @@ inline void setSelected(bool s) {m_selected=s;} inline bool isSelected() {return m_selected;} - + + bool isVisible() const { return m_visible; } + void setVisible(bool v) { m_visible = v; } + + Q_SIGNALS: void changed(); @@ -107,6 +111,7 @@ CanvasElement* m_ce; private: double m_z; + bool m_visible; DotRenderOpVec m_renderOperations; --- kgraphviewer-kde4-2.0.orig/src/part/canvasedge.cpp +++ kgraphviewer-kde4-2.0/src/part/canvasedge.cpp @@ -56,10 +56,9 @@ m_gh(gh), m_wdhcf(wdhcf), m_hdvcf(hdvcf), m_edge(e), m_font(0), m_view(view), m_popup(new QMenu()) { + kDebug() << "edge " << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << m_gh; m_font = FontsCache::changeable().fromName(e->fontName()); -// kDebug() << edge() << "->" << edge(); -// kDebug() << "edge " << edge()->fromNode()/*->id()*/ << "->" << edge()->toNode()/*->id()*/; computeBoundingRect(); // kDebug() << "boundingRect computed: " << m_boundingRect; @@ -122,18 +121,14 @@ return; } QList allPoints; - DotRenderOpVec::const_iterator it, it_end; - it = edge()->renderOperations().begin(); - it_end = edge()->renderOperations().end(); - for (; it != it_end; it++) - { - const DotRenderOp& dro = (*it); -// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "renderop" << (*it).renderop << "; selected:" << edge()->isSelected(); - if ( (*it).renderop == "T" ) + foreach (const DotRenderOp& dro, edge()->renderOperations()) + { +// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "renderop" << dro.renderop << "; selected:" << edge()->isSelected(); + if ( dro.renderop == "T" ) { - const QString& str = (*it).str; + const QString& str = dro.str; - qreal stringWidthGoal = (*it).integers[3] * m_scaleX; + qreal stringWidthGoal = dro.integers[3] * m_scaleX; int fontSize = edge()->fontSize(); m_font->setPointSize(fontSize); QFontMetrics fm(*m_font); @@ -163,25 +158,25 @@ p->drawText(point,str); p->restore(); } - else if (( (*it).renderop == "p" ) || ((*it).renderop == "P" )) + else if (( dro.renderop == "p" ) || (dro.renderop == "P" )) { - QPolygonF polygon((*it).integers[0]); - for (int i = 0; i < (*it).integers[0]; i++) + QPolygonF polygon(dro.integers[0]); + for (int i = 0; i < dro.integers[0]; i++) { QPointF point( - (int((*it).integers[2*i+1])/*%m_wdhcf*/)*m_scaleX +m_xMargin, - (int(m_gh-(*it).integers[2*i+2])/*%m_hdvcf*/)*m_scaleY + m_yMargin + (int(dro.integers[2*i+1])/*%m_wdhcf*/)*m_scaleX +m_xMargin, + (int(m_gh-dro.integers[2*i+2])/*%m_hdvcf*/)*m_scaleY + m_yMargin ); polygon[i] = point; // kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << point; allPoints.append(point); } - if ((*it).renderop == "P" ) + if (dro.renderop == "P" ) { p->save(); p->setBrush(Dot2QtConsts::componentData().qtColor(edge()->color(0))); p->drawPolygon(polygon); -// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPolygon" << edge()->color(0) << polygon; + kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPolygon" << edge()->color(0) << polygon; p->restore(); } else @@ -201,18 +196,18 @@ } p->save(); p->setPen(pen); -// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPolyline" << edge()->color(0) << polygon; + kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPolyline" << edge()->color(0) << polygon; p->drawPolyline(polygon); p->restore(); } - else if (( (*it).renderop == "e" ) || ((*it).renderop == "E" )) + else if (( dro.renderop == "e" ) || (dro.renderop == "E" )) { - qreal w = m_scaleX * (*it).integers[2] * 2; - qreal h = m_scaleY * (*it).integers[3] * 2; - qreal x = (m_xMargin + ((*it).integers[0]/*%m_wdhcf*/)*m_scaleX) - w/2; - qreal y = ((m_gh - (*it).integers[1]/*%m_hdvcf*/)*m_scaleY + m_yMargin) - h/2; + qreal w = m_scaleX * dro.integers[2] * 2; + qreal h = m_scaleY * dro.integers[3] * 2; + qreal x = (m_xMargin + (dro.integers[0]/*%m_wdhcf*/)*m_scaleX) - w/2; + qreal y = ((m_gh - dro.integers[1]/*%m_hdvcf*/)*m_scaleY + m_yMargin) - h/2; p->save(); - if ((*it).renderop == "E" ) + if (dro.renderop == "E" ) { p->setBrush(Dot2QtConsts::componentData().qtColor(edge()->color(0))); } @@ -233,11 +228,11 @@ } p->setPen(pen); QRectF rect(x,y,w,h); -// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawEllipse" << edge()->color(0) << rect; + kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawEllipse" << edge()->color(0) << rect; p->drawEllipse(rect); p->restore(); } - else if ( (*it).renderop == "B" ) + else if ( dro.renderop == "B" ) { uint lineWidth = 1; QPen pen; @@ -258,11 +253,11 @@ } for (int splineNum = 0; splineNum < edge()->colors().count() || (splineNum==0 && edge()->colors().count()==0); splineNum++) { - QPolygonF points((*it).integers[0]); - for (int i = 0; i < (*it).integers[0]; i++) + QPolygonF points(dro.integers[0]); + for (int i = 0; i < dro.integers[0]; i++) { - qreal nom = ((*it).integers[2*(*it).integers[0]]-(*it).integers[2]); - qreal denom = ((*it).integers[2*(*it).integers[0]-1]-(*it).integers[1]); + qreal nom = (dro.integers[2*dro.integers[0]]-dro.integers[2]); + qreal denom = (dro.integers[2*dro.integers[0]-1]-dro.integers[1]); qreal diffX, diffY; if (nom == 0) { @@ -289,8 +284,8 @@ } } QPointF p( - ((*it).integers[2*i+1]/*%m_wdhcf*/*m_scaleX) +m_xMargin + diffX, - (m_gh-(*it).integers[2*i+2]/*%m_hdvcf*/)*m_scaleY + m_yMargin + diffY + (dro.integers[2*i+1]/*%m_wdhcf*/*m_scaleX) +m_xMargin + diffX, + (m_gh-dro.integers[2*i+2]/*%m_hdvcf*/)*m_scaleY + m_yMargin + diffY ); points[i] = p; // kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << p; @@ -308,7 +303,7 @@ { path.cubicTo(points[3*j + 1],points[3*j+1 + 1], points[3*j+2 + 1]); } -// kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPath" << edge()->color(splineNum) << points.first() << points.last(); + kDebug() << edge()->fromNode()->id() << "->" << edge()->toNode()->id() << "drawPath" << edge()->color(splineNum) << points.first() << points.last(); p->drawPath(path); p->restore(); } @@ -374,20 +369,17 @@ else { QPolygonF points; - DotRenderOpVec::const_iterator it, it_end; - it = edge()->renderOperations().begin(); - it_end = edge()->renderOperations().end(); - for (; it != it_end; it++) + foreach (const DotRenderOp& dro, edge()->renderOperations()) { -// kDebug() << (*it).renderop << ", "; - if ( ((*it).renderop != "B") && ((*it).renderop != "p") && ((*it).renderop != "P") ) continue; +// kDebug() << dro.renderop << ", "; + if ( (dro.renderop != "B") && (dro.renderop != "p") && (dro.renderop != "P") ) continue; uint previousSize = points.size(); - points.resize(previousSize+(*it).integers[0]); - for (int i = 0; i < (*it).integers[0]; i++) + points.resize(previousSize+dro.integers[0]); + for (int i = 0; i < dro.integers[0]; i++) { QPointF p( - (((*it).integers[2*i+1]/*%m_wdhcf*/)*m_scaleX) +m_xMargin, - ((m_gh-(*it).integers[2*i+2]/*%m_hdvcf*/)*m_scaleY) + m_yMargin + ((dro.integers[2*i+1]/*%m_wdhcf*/)*m_scaleX) +m_xMargin, + ((m_gh-dro.integers[2*i+2]/*%m_hdvcf*/)*m_scaleY) + m_yMargin ); points[previousSize+i] = p; } @@ -450,5 +442,7 @@ void CanvasEdge::slotRemoveEdge() { kDebug(); - m_view->removeSelectedEdges(); + m_view->removeSelectedElements(); } + +#include "canvasedge.moc" --- kgraphviewer-kde4-2.0.orig/src/part/graphnode.cpp +++ kgraphviewer-kde4-2.0/src/part/graphnode.cpp @@ -45,17 +45,13 @@ // GraphNode::GraphNode() : - GraphElement(), - m_visible(false)//, -// m_x(0), m_y(0), m_w(0), m_h(0) + GraphElement() { // kDebug() ; } GraphNode::GraphNode(const GraphNode& gn) : - GraphElement(gn), - m_visible(gn.m_visible)//, -// m_x(gn.m_x), m_y(gn.m_y), m_w(gn.m_w), m_h(gn.m_h) + GraphElement(gn) { // kDebug() ; } @@ -63,11 +59,11 @@ void GraphNode::updateWith(const GraphNode& node) { // kDebug() ; + GraphElement::updateWith(node); if (canvasNode()) { canvasNode()->modelChanged(); } - GraphElement::updateWith(node); // kDebug() << "done"; } --- kgraphviewer-kde4-2.0.orig/src/part/canvasnode.cpp +++ kgraphviewer-kde4-2.0/src/part/canvasnode.cpp @@ -72,17 +72,6 @@ setToolTip(tipStr); } -void CanvasNode::modelChanged() -{ -// kDebug() << node()->id(); - m_pen = QPen(Dot2QtConsts::componentData().qtColor(m_element->fontColor())); - m_font = FontsCache::changeable().fromName(m_element->fontName()); - computeBoundingRect(); - prepareGeometryChange(); - setPos(0,0); -} - - // CanvasHtmlNode::CanvasHtmlNode( // DotGraphView* v, // GraphNode* n, --- kgraphviewer-kde4-2.0.orig/src/part/kgraphviewer_part.h +++ kgraphviewer-kde4-2.0/src/part/kgraphviewer_part.h @@ -61,8 +61,10 @@ void graphLoaded(); void newNodeAdded(const QString&); void newEdgeAdded(const QString&, const QString&); - /** signals that the user as activated a remove edge command */ + /** signals that the user has activated a remove edge command */ void removeEdge(const QString&); + /** signals that the user has activated a remove element command */ + void removeElement(const QString&); void close(); public slots: @@ -82,6 +84,7 @@ void slotAddNewSubgraph(QMap attribs); void slotAddNewEdge(QString src, QString tgt, QMap attribs); void slotRemoveEdge(const QString& id); + void slotRemoveElement(const QString& id); void slotClose(); protected: --- kgraphviewer-kde4-2.0.orig/src/part/dotgraph.h +++ kgraphviewer-kde4-2.0/src/part/dotgraph.h @@ -98,9 +98,11 @@ virtual void updateWith(const DotGraph& graph); +public Q_SLOTS: void removeNodeNamed(const QString& nodeName); void removeEdge(const QString& id); - + void removeElement(const QString& id); + Q_SIGNALS: void readyToDisplay(); --- kgraphviewer-kde4-2.0.orig/src/part/graphedge.cpp +++ kgraphviewer-kde4-2.0/src/part/graphedge.cpp @@ -90,11 +90,15 @@ void GraphEdge::updateWith(const GraphEdge& edge) { -// kDebug() ; + kDebug() ; m_arrowheads = edge.arrowheads(); m_colors = edge.colors(); m_dir = edge.dir(); GraphElement::updateWith(edge); + if (canvasEdge()) + { + canvasEdge()->modelChanged(); + } } QTextStream& operator<<(QTextStream& s, const GraphEdge& e) --- kgraphviewer-kde4-2.0.orig/src/part/dotgraphview.cpp +++ kgraphviewer-kde4-2.0/src/part/dotgraphview.cpp @@ -164,6 +164,10 @@ setInteractive(true); setDragMode(NoDrag); setRenderHint(QPainter::Antialiasing); + + connect(this, SIGNAL(removeEdge(const QString&)), m_graph, SLOT(removeEdge(const QString&))); + connect(this, SIGNAL(removeNodeNamed(const QString&)), m_graph, SLOT(removeNodeNamed(const QString&))); + connect(this, SIGNAL(removeElement(const QString&)), m_graph, SLOT(removeElement(const QString&))); } DotGraphView::~DotGraphView() @@ -200,6 +204,9 @@ delete m_graph; m_graph = new DotGraph(); connect(m_graph,SIGNAL(readyToDisplay()),this,SLOT(displayGraph())); + connect(this, SIGNAL(removeEdge(const QString&)), m_graph, SLOT(removeEdge(const QString&))); + connect(this, SIGNAL(removeNodeNamed(const QString&)), m_graph, SLOT(removeNodeNamed(const QString&))); +// connect(this, SIGNAL(removeElement(const QString&)), m_graph, SLOT(removeElement(const QString&))); if (m_readWrite) { @@ -240,6 +247,9 @@ delete m_graph; m_graph = new DotGraph(layoutCommand,dotFileName); connect(m_graph,SIGNAL(readyToDisplay()),this,SLOT(displayGraph())); + connect(this, SIGNAL(removeEdge(const QString&)), m_graph, SLOT(removeEdge(const QString&))); + connect(this, SIGNAL(removeNodeNamed(const QString&)), m_graph, SLOT(removeNodeNamed(const QString&))); + connect(this, SIGNAL(removeElement(const QString&)), m_graph, SLOT(removeElement(const QString&))); if (m_readWrite) { @@ -421,7 +431,7 @@ void DotGraphView::updateSizes(QSizeF s) { -// kDebug() ; + kDebug() ; if (m_canvas == 0) return; if (s == QSizeF(0,0)) s = size(); @@ -772,6 +782,11 @@ e->setSelected(false); e->canvasEdge()->update(); } + foreach(GraphNode* n, m_graph->nodes()) + { + n->setSelected(false); + n->canvasElement()->update(); + } } m_pressPos = e->globalPos(); m_pressScrollBarsPos = QPoint(horizontalScrollBar()->value(), verticalScrollBar()->value()); @@ -1468,6 +1483,31 @@ e->canvasEdge()->update(); } } + foreach(GraphNode* n, m_graph->nodes()) + { + n->setSelected(false); + n->canvasNode()->update(); + } + } +} + +void DotGraphView::slotElementSelected(CanvasElement* element, Qt::KeyboardModifiers modifiers) +{ + if (!modifiers.testFlag(Qt::ControlModifier)) + { + foreach(GraphEdge* e, m_graph->edges()) + { + e->setSelected(false); + e->canvasEdge()->update(); + } + foreach(GraphNode* e, m_graph->nodes()) + { + if (e->canvasElement() != element) + { + e->setSelected(false); + e->canvasElement()->update(); + } + } } } @@ -1484,6 +1524,26 @@ } } +void DotGraphView::removeSelectedNodes() +{ + kDebug(); + foreach(GraphNode* e, m_graph->nodes()) + { + if (e->isSelected()) + { + kDebug() << "emiting removeElement " << e->id(); + emit removeElement(e->id()); + } + } +} + +void DotGraphView::removeSelectedElements() +{ + kDebug(); + removeSelectedNodes(); + removeSelectedEdges(); +} + void DotGraphView::timerEvent ( QTimerEvent * event ) { kDebug() << event->timerId(); --- kgraphviewer-kde4-2.0.orig/src/kgrapheditor.h +++ kgraphviewer-kde4-2.0/src/kgrapheditor.h @@ -64,10 +64,9 @@ void reloadPreviousFiles(); protected: - bool queryExit(); -signals: +Q_SIGNALS: void hide(KParts::Part* part); void prepareAddNewElement(QMap attribs); void prepareAddNewEdge(QMap attribs); @@ -75,11 +74,12 @@ void saveTo(const QString& fileName); void removeNode(const QString&); + void removeElement(const QString&); void addAttribute(const QString&); void removeAttribute(const QString&,const QString&); void update(); -public slots: +public Q_SLOTS: /** * Use this method to load whatever file/URL you have */ @@ -103,8 +103,9 @@ void reloadOnChangeMode_pressed(int value); void openInExistingWindowMode_pressed(int value); void reopenPreviouslyOpenedFilesMode_pressed(int value);*/ - -private slots: + void slotRemoveElement(const QString& id); + +private Q_SLOTS: void fileNew(); void fileOpen(); void fileSave(); --- kgraphviewer-kde4-2.0.orig/src/kgrapheditor.cpp +++ kgraphviewer-kde4-2.0/src/kgrapheditor.cpp @@ -586,6 +586,13 @@ connect( m_currentPart, SIGNAL( newEdgeAdded(const QString&, const QString&) ), this, SLOT( slotNewEdgeAdded(const QString&, const QString&) ) ); + + connect( m_currentPart, SIGNAL( removeElement(const QString&) ), + this, SLOT( slotRemoveElement(const QString&) ) ); + + + connect( this, SIGNAL( removeElement(const QString&) ), + m_currentPart, SLOT( slotRemoveElement(const QString&) ) ); } void KGraphEditor::slotNewNodeAdded(const QString& id) @@ -741,4 +748,12 @@ m_newElementAttributes.remove(attrib); } +void KGraphEditor::slotRemoveElement(const QString& id) +{ + kDebug() << id; + m_treeWidget->slotRemoveElement(id); + emit(removeElement(id)); +} + + #include "kgrapheditor.moc" --- kgraphviewer-kde4-2.0.orig/src/KGraphEditorNodesTreeWidget.cpp +++ kgraphviewer-kde4-2.0/src/KGraphEditorNodesTreeWidget.cpp @@ -74,12 +74,22 @@ void KGraphEditorNodesTreeWidget::slotRemoveNode() { - kDebug() << "Remove Node"; + kDebug(); emit removeNode(m_item->text(0)); delete takeTopLevelItem (indexOfTopLevelItem(m_item)); m_item = 0; } +void KGraphEditorNodesTreeWidget::slotRemoveElement(const QString& id) +{ + kDebug() << id; + QList items = findItems(id,Qt::MatchExactly,0); + foreach (QTreeWidgetItem* item, items) + { + delete takeTopLevelItem (indexOfTopLevelItem(item)); + } +} + void KGraphEditorNodesTreeWidget::slotAddAttribute() { kDebug() << "Add Attribute"; --- kgraphviewer-kde4-2.0.orig/src/KGraphEditorNodesTreeWidget.h +++ kgraphviewer-kde4-2.0/src/KGraphEditorNodesTreeWidget.h @@ -51,6 +51,9 @@ void slotAddAttribute(); void slotRemoveAttribute(); +public Q_SLOTS: + void slotRemoveElement(const QString& id); + Q_SIGNALS: void removeNode(const QString&); void addAttribute(const QString&); --- kgraphviewer-kde4-2.0.orig/debian/copyright +++ kgraphviewer-kde4-2.0/debian/copyright @@ -0,0 +1,29 @@ +Package was debianized by Debian Qt/KDE Team at Extremadura meeting december 2007 + +Upstream Author: + Gael de Chalendar + +Copyright holders: + Copyright (C) 2005-2007 Gael de Chalendar + Copyright (C) 2005 Jaroslaw Staniek + +Files in this package is under GPLv2: + + KGraphViewer is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation, version 2. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA + +On Debian Systems, the full text of the GPL2 license can be found in +/usr/share/common-licenses/GPL-2 + +Debian packaging is under any license and made by Debian Qt/KDE Team. --- kgraphviewer-kde4-2.0.orig/debian/control +++ kgraphviewer-kde4-2.0/debian/control @@ -0,0 +1,23 @@ +Source: kgraphviewer-kde4 +Section: utils +Priority: optional +Maintainer: Kubuntu Developers +XSBC-Original-Maintainer: Debian Qt/KDE Maintainers +Uploaders: Ana Beatriz Guerrero Lopez , Sune Vuorela , Fathi Boudra , Armin Berres +Build-Depends: cdbs, debhelper (>= 5), cmake, quilt, kdelibs5-dev (>= 4:4.0.2), + libboost-dev, kdepimlibs5-dev (>= 4:4.0.2), libphonon-dev +Standards-Version: 3.7.3 +Homepage: http://extragear.kde.org/apps/kgraphviewer/ + +Package: kgraphviewer-kde4 +Architecture: any +Section: utils +Depends: ${shlibs:Depends} +Description: a GraphViz dot graph viewer for KDE 4 + KGraphViewer is a GraphViz dot graph viewer for KDE 4. The graphviz program + suite is a free software set of layout engines for graphs. They are commonly + used in scientific domains and particularly in computer science. But until + now there was a lack of a GUI to look at the graphs. Programs provided with + GraphViz are: I feel, out of date X11, or Tcl/Tk applications with few + Functionalities. KGraphViewer is aimed at replacing these tools with a modern + user-friendly GUI will all the power of a well integrated KDE application. --- kgraphviewer-kde4-2.0.orig/debian/compat +++ kgraphviewer-kde4-2.0/debian/compat @@ -0,0 +1 @@ +5 --- kgraphviewer-kde4-2.0.orig/debian/cdbs/cmake.mk +++ kgraphviewer-kde4-2.0/debian/cdbs/cmake.mk @@ -0,0 +1,60 @@ +# -*- mode: makefile; coding: utf-8 -*- +# Copyright (C) 2006 Peter Rockai +# Copyright (C) 2006 Fathi Boudra +# Description: A class for cmake packages +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation; either version 2, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +# 02111-1307 USA. + +ifndef _cdbs_bootstrap +_cdbs_scripts_path ?= /usr/lib/cdbs +_cdbs_rules_path ?= /usr/share/cdbs/1/rules +_cdbs_class_path ?= /usr/share/cdbs/1/class +endif + +ifndef _cdbs_class_cmake +_cdbs_class_cmake := 1 + +include $(_cdbs_rules_path)/buildcore.mk$(_cdbs_makefile_suffix) + +ifdef _cdbs_tarball_dir +DEB_BUILDDIR = $(_cdbs_tarball_dir)/obj-$(DEB_BUILD_GNU_TYPE) +else +DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE) +endif + +DEB_MAKE_INSTALL_TARGET = install DESTDIR=$(DEB_DESTDIR) +DEB_CMAKE_PREFIX =/usr + +# Overriden from makefile-vars.mk +# We pass CFLAGS and friends to ./configure, so no need to pass them to make +DEB_MAKE_INVOKE = $(DEB_MAKE_ENVVARS) $(MAKE) -C $(DEB_BUILDDIR) + +include $(_cdbs_class_path)/makefile.mk$(_cdbs_makefile_suffix) + +common-configure-arch common-configure-indep:: common-configure-impl +common-configure-impl:: $(DEB_BUILDDIR)/CMakeCache.txt +$(DEB_BUILDDIR)/CMakeCache.txt: + cd $(DEB_BUILDDIR) && cmake $(CURDIR)/$(DEB_SRCDIR) \ + -DCMAKE_INSTALL_PREFIX="$(DEB_CMAKE_PREFIX)" \ + $(DEB_CMAKE_EXTRA_FLAGS) -DCMAKE_CXX_FLAGS="$(CXXFLAGS)" \ + -DCMAKE_C_FLAGS="$(CFLAGS)" -DCMAKE_VERBOSE_MAKEFILE=ON + mkdir -p $(DEB_DESTDIR) + +cleanbuilddir:: + -if test "$(DEB_BUILDDIR)" != "$(DEB_SRCDIR)"; then rm -rf $(DEB_BUILDDIR); fi + +endif + --- kgraphviewer-kde4-2.0.orig/debian/cdbs/kde.mk +++ kgraphviewer-kde4-2.0/debian/cdbs/kde.mk @@ -0,0 +1,104 @@ +# until bug 377524 resolved. +include debian/cdbs/cmake.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk +include /usr/share/cdbs/1/rules/utils.mk + +DEB_COMPRESS_EXCLUDE = .dcl .docbook -license .tag .sty .el +DEB_CMAKE_EXTRA_FLAGS += \ + $(DEB_CMAKE_DEBUG_FLAGS) \ + $(KDE4-ENABLE-FINAL) \ + -DKDE4_BUILD_TESTS=true \ + -DKDE_DISTRIBUTION_TEXT="Kubuntu packages" \ + -DXDG_APPS_INSTALL_DIR=/usr/share/applications/kde4/ \ + -DCONFIG_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/etc/kde4 \ + -DDATA_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/share/kde4/apps \ + -DHTML_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/share/doc/kde4/HTML \ + -DKCFG_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/share/kde4/config.kcfg \ + -DLIB_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/lib \ + -DSYSCONF_INSTALL_DIR=$(DEB_CMAKE_PREFIX)/etc \ + -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--no-undefined -Wl,--as-needed" \ + -DCMAKE_MODULE_LINKER_FLAGS="-Wl,--no-undefined -Wl,--as-needed" \ + -DCMAKE_EXE_LINKER_FLAGS="-Wl,--no-undefined -Wl,--as-needed" + +DEB_CMAKE_PREFIX = /usr/lib/kde4 +DEB_DH_INSTALL_ARGS = --sourcedir=debian/tmp +DEB_DH_SHLIBDEPS_ARGS = -l/usr/lib/kde4/lib/ +DEB_KDE_ENABLE_FINAL ?= +#DEB_MAKE_ENVVARS += XDG_CONFIG_DIRS=/etc/xdg XDG_DATA_DIRS=/usr/share +#DEB_STRIP_EXCLUDE = so + +ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + cdbs_treat_me_gently_arches := arm m68k alpha ppc64 armel armeb + ifeq (,$(filter $(DEB_HOST_ARCH_CPU),$(cdbs_treat_me_gently_arches))) + KDE4-ENABLE-FINAL = $(if $(DEB_KDE_ENABLE_FINAL),-DKDE4_ENABLE_FINAL=true,) + else + KDE4-ENABLE-FINAL = + endif +endif + +ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + #no optimizations, full debug + DEB_CMAKE_DEBUG_FLAGS = -DCMAKE_BUILD_TYPE=debugfull +else + #This is around -O2 -g + DEB_CMAKE_DEBUG_FLAGS = -DCMAKE_BUILD_TYPE=relwithdebinfo +endif + +common-build-arch:: debian/stamp-man-pages +debian/stamp-man-pages: + if ! test -d debian/man/out; then mkdir -p debian/man/out; fi + for f in $$(find debian/man -name '*.sgml'); do \ + docbook-to-man $$f > debian/man/out/`basename $$f .sgml`.1; \ + done + for f in $$(find debian/man -name '*.man'); do \ + soelim -I debian/man $$f \ + > debian/man/out/`basename $$f .man`.`head -n1 $$f | awk '{print $$NF}'`; \ + done + touch debian/stamp-man-pages + +clean:: +ifndef THIS_SHOULD_GO_TO_UNSTABLE + #guard against experimental uploads to unstable + #dpkg-parsechangelog | grep ^Distribution | grep -q experimental +endif + rm -rf debian/man/out + -rmdir debian/man + rm -f debian/stamp-man-pages + rm -f CMakeCache.txt + + +$(patsubst %,binary-install/%,$(DEB_PACKAGES)) :: binary-install/%: + if test -x /usr/bin/dh_desktop; then dh_desktop -p$(cdbs_curpkg) $(DEB_DH_DESKTOP_ARGS); fi + if test -e debian/$(cdbs_curpkg).lintian; then \ + install -p -D -m644 debian/$(cdbs_curpkg).lintian \ + debian/$(cdbs_curpkg)/usr/share/lintian/overrides/$(cdbs_curpkg); \ + fi + if test -e debian/$(cdbs_curpkg).presubj; then \ + install -p -D -m644 debian/$(cdbs_curpkg).presubj \ + debian/$(cdbs_curpkg)/usr/share/bug/$(cdbs_curpkg)/presubj; \ + fi + +binary-install/$(DEB_SOURCE_PACKAGE)-doc-html:: + set -e; \ + for doc in `cd $(DEB_DESTDIR)/usr/share/doc/kde/HTML/en; find . -name index.docbook`; do \ + pkg=$${doc%/index.docbook}; pkg=$${pkg#./}; \ + echo Building $$pkg HTML docs...; \ + mkdir -p $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/usr/share/doc/kde/HTML/en/$$pkg; \ + cd $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/usr/share/doc/kde/HTML/en/$$pkg; \ + meinproc4 $(DEB_DESTDIR)/usr/share/doc/kde/HTML/en/$$pkg/index.docbook; \ + done + for pkg in $(DOC_HTML_PRUNE) ; do \ + rm -rf debian/$(DEB_SOURCE_PACKAGE)-doc-html/usr/share/doc/kde/HTML/en/$$pkg; \ + done + +#For Kubuntu paths create custom binary wrapper and .desktop menu files +kde4-wrapper-creation: + if [ -e $(DEB_DESTDIR)/usr/share/applications/kde4/ ]; then \ + for file in `ls $(DEB_DESTDIR)/usr/share/applications/kde4/`; do \ + sed -i 's,Exec=,Exec=/usr/lib/kde4/bin/,' $(DEB_DESTDIR)/usr/share/applications/kde4/$${file}; \ + done; \ + fi + +common-install-indep:: kde4-wrapper-creation +common-install-arch:: kde4-wrapper-creation --- kgraphviewer-kde4-2.0.orig/debian/patches/series +++ kgraphviewer-kde4-2.0/debian/patches/series @@ -0,0 +1 @@ +kubuntu_01_fix_blank_screen.diff --- kgraphviewer-kde4-2.0.orig/debian/patches/kubuntu_01_fix_blank_screen.diff +++ kgraphviewer-kde4-2.0/debian/patches/kubuntu_01_fix_blank_screen.diff @@ -0,0 +1,12 @@ +Index: kgraphviewer-kde4-2.0/src/part/dotgrammar.cpp +=================================================================== +--- kgraphviewer-kde4-2.0.orig/src/part/dotgrammar.cpp 2008-05-14 21:08:03.000000000 -0400 ++++ kgraphviewer-kde4-2.0/src/part/dotgrammar.cpp 2008-05-14 21:09:35.000000000 -0400 +@@ -527,6 +527,6 @@ + bool parse(const std::string& str) + { + DotGrammar g; +- return boost::spirit::parse(str.c_str(), g, (+boost::spirit::space_p|boost::spirit::comment_p("/*", "*/"))).full; ++ return boost::spirit::parse(str.c_str(), g >> end_p, (+boost::spirit::space_p|boost::spirit::comment_p("/*", "*/"))).full; + } + --- kgraphviewer-kde4-2.0.orig/debian/rules +++ kgraphviewer-kde4-2.0/debian/rules @@ -0,0 +1,28 @@ +#!/usr/bin/make -f + +export LDFLAGS+="-Wl,--as-needed" + +include debian/cdbs/kde.mk + +#For Kubuntu paths create custom binary wrapper and .desktop menu files +install/kgraphviewer-kde4:: + mkdir -p $(DEB_DESTDIR)/usr/bin + for file in `ls $(DEB_DESTDIR)/usr/lib/kde4/bin/`; do \ + echo "#!/bin/sh" > $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + echo export LD_LIBRARY_PATH=/usr/lib/kde4/lib >> $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + echo export KDEHOME=~/.kde4 >> $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + echo export KDEDIRS=/usr/lib/kde4 >> $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + echo export PATH=/usr/lib/kde4/bin:\$$PATH >> $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + echo /usr/lib/kde4/bin/$${file} \$$@ >> $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + chmod 755 $(DEB_DESTDIR)/usr/bin/$${file}-kde4; \ + done + + mkdir -p $(DEB_DESTDIR)/usr/share/applications + for file in `ls $(DEB_DESTDIR)/usr/lib/kde4/share/applications/kde4/`; do \ + cat $(DEB_DESTDIR)/usr/lib/kde4/share/applications/kde4/$${file} \ + | sed 's/Name=.*$$/& KDE 4/' \ + | sed 's/Exec=[a-z]*/&-kde4/' \ + | sed 's,Icon=,Icon=/usr/lib/kde4/share/icons/hicolor/32x32/apps/,' \ + | sed 's/Icon=.*$$/&.png/' \ + > $(DEB_DESTDIR)/usr/share/applications/kde4-$${file}; \ + done --- kgraphviewer-kde4-2.0.orig/debian/changelog +++ kgraphviewer-kde4-2.0/debian/changelog @@ -0,0 +1,47 @@ +kgraphviewer-kde4 (4:2.0-0ubuntu2.1) hardy-proposed; urgency=low + + * Added patch kubuntu_01_fix_blank_screen.diff from upstream that + fixes a problem that causes the program to display a blank + screen. (LP: #214577) + + -- Yuriy Kozlov Wed, 14 May 2008 21:12:27 -0400 + +kgraphviewer-kde4 (4:2.0-0ubuntu2) hardy; urgency=low + + * New minor upstream release + + -- Richard A. Johnson Mon, 03 Mar 2008 17:29:20 -0600 + +kgraphviewer-kde4 (4:2.0-0ubuntu1) hardy; urgency=low + + * New upstream release + * Updated kde.mk + * Bumped kdelibs5-dev and kdepimlibs5-dev deps to 4:4.0.1 + + -- Richard A. Johnson Mon, 04 Feb 2008 17:37:22 -0600 + +kgraphviewer-kde4 (4.0.0-0ubuntu1) hardy; urgency=low + + * Initial release for Ubuntu, merge from Debian, Ubuntu changes are: + - cdbs/kde.mk: updated installation locations and removed rpath + - debian/control: updated Maintainer according to Ubuntu specs + - debian/control: renamed package to kgraphviewer-kde4 + - debian/control: added homepage + - debian/control: added kdepimlibs5-dev and libphonon-dev to build-deps + - debian/rules: added KDE 4 magic foo + * New upstream release + + -- Richard A. Johnson Wed, 09 Jan 2008 22:40:24 -0600 + +kgraphviewer (3.97.0-1) experimental; urgency=low + + * New upstream release. + * Build depend on kdebase-workspace-dev >= 4:3.97.0. + * Update installed files. + * Add new package extragear-plasma-l10n for localization files. + * Remove dependency on sharutils. Not needed anymore. + * Add export LDFLAGS+="-Wl,--as-needed" in rules to make dpkg-shlibdeps + happier. + * Update Standards-Version to 3.7.3. + + -- Armin Berres Sat, 08 Dec 2007 00:05:24 +0000